I want to build with maven my java projects on a TFS build server. TFS Build Definition uses invokeprocess in the workflow. invokeprocess can run a powershell script and a command batch file.
Maven command with the command " mvn assembly:assembly -P prod " on the Windows command line. But this is not a success in powershell. (I connected to the server with the remote and executed on powershell ise) (either as a regular user or as an administrator)
I installed Maven 3.1.1 and Java Dev Kit 6 update 45 on a Windows-Standart 64-bit machine. We use NTLM authentication and proxy.
I defined the following configuration:
Environment Settings:
JAVA_HOME C:\Program Files\Java\jdk1.6.0_45 M2 %M2_HOME%\bin M2_HOME C:\Program Files\Apache Software Foundation\apache-maven-3.1.1
Path:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;%TFSPowerToolDir%;%BPADir%;%M2%;%JAVA_HOME%\bin
maven settings.xml:
<settings> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>proxy.xxx.entp</host> <port>8080</port> <username>myuser</username> <password>mypassword</password> <nonProxyHosts>*.xxx.entp|localhost</nonProxyHosts> </proxy> </proxies> </settings>
Below is my powershell script:
# mvn clean install # mvn assembly:assembly –P prod Set-ExecutionPolicy Unrestricted -Force $mvnArgs1 ="mvn assembly:assembly –P prod -Dmaven.test.skip=true".replace('-P','`-P').replace('-D','`-D') Invoke-Expression $mvnArgs1
The following is the output in powershell:
click on powershell output image
how does maven work in powershell? Or in any way?
source share