相关疑难解决方法(0)

Maven在cmd中工作但不是powershell

我想在TFS Build Server上使用maven构建我的java项目.TFS构建定义在工作流中使用invokeprocess.invokeprocess能够运行powershell脚本和命令批处理文件.

mvn assembly:assembly -P prod在Windows命令提示符下使用" "命令成功构建了Maven .但是在PowerShell中并没有成功.(我使用远程连接到服务器并在powershell上执行)(作为普通用户或作为管理员)

我在Windows 2012 Standart 64位机器上安装了Maven 3.1.1和Java Dev Kit 6 update 45.我们使用NTLM身份验证和代理.

我定义了以下配置:

环境设置:

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
Run Code Online (Sandbox Code Playgroud)

路径:

  %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
Run Code Online (Sandbox Code Playgroud)

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>
Run Code Online (Sandbox Code Playgroud)

以下是我的powershell脚本:

# 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 …
Run Code Online (Sandbox Code Playgroud)

powershell tfsbuild maven

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

maven ×1

powershell ×1

tfsbuild ×1