2011-11-24 101 views
1

我正在使用ant maven deploy任务将由ant脚本创建的zip文件上传到我们的存储库,但问题是该文件太大并且会失败 java.lang .OutOfMemoryError:Java堆空间。以下是任务为ant maven部署任务指定内存

<deploy uniqueversion="false"> 
     <remoterepository url="${repository}" id="${repositoryId}"/> 
     <remotesnapshotrepository url="${snapshotRepository}" id="${snapshotRepositoryId}"/> 
    <attach file="target/${qname}-dist.zip" type="zip"/> 
    <pom file="pom.xml" groupid="com.my.company" artifactid="test" packaging="zip" version="${version}" /> 

</deploy> 

我怎么在这里指定内存堆大小,我似乎还没有找到在部署任务或某些其子任务的任何事情。

回答

1

Maven不会在部署任务上分叉以增加内存,您必须增加maven可执行文件本身的堆大小。您可以将MAVEN_OPTS环境变量设置为包含-Xmx设置:MAVEN_OPTS=”-Xmx512m”

+0

这不会起作用,因为我们希望将其交给部署团队来运行它,并且它们会从多个计算机上运行它,不要期望他们设置环境变量来运行它。 – Ravi

+0

为什么不写一个简单的脚本来封装你的maven电话?您可以设置和导出MAVEN_OPTS参数,然后调用mvn deploy。然后把这个脚本给你的运营团队。 – Chris