On 13/10/2010 7:29 PM, Phillip Hellewell wrote:
I'm using Maven 2.2.1 and getting a heap overflow when trying to
deploy an artifact about 50MB in size.  I'm deploying to an Nexus
server (HTTP).

I added "@set MAVEN_OPTS=-Xms128m -Xmx512m" to my mvn.bat and now it is working.

But my question is, why should uploading a file require so much
memory?  It's not like it tries to read the whole file into memory, or
does it?  If so, that seems kinda dumb.
We have seen this one as well.
Probably more of a comment on the guys that set the default way too low.
Who would buy a computer with 512Mb of memory and no paging space?
I suspect that the guys that write the code that we use, do not have real world examples where you need to move 50 Mb around. We had the problem with CXF (Apache web services) where we could not deploy the basic library jar to Nexus without setting the Eclipse parameters for a JVM fork to something more in keeping with the natural capacity of our actual workstations (2Gb physical memory with 4Gb of cache) . I just set the JVM options to -Xmx1024m to start, on any Java program, since the JVM is already running in a virtual machine (Linux or Vista) anyway that can easily deal with a 1Gb task if it does not use the memory.

Ron
Phillip

P.S.  Here's the trace:

java.lang.OutOfMemoryError: Java heap space
         at java.util.Arrays.copyOf(Unknown Source)
         at java.io.ByteArrayOutputStream.write(Unknown Source)
         at sun.net.www.http.PosterOutputStream.write(Unknown Source)
         at 
org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:492)
         at 
org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:457)
         at 
org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:411)
         at 
org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:392)
         at 
org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:365)
         at org.apache.maven.wagon.StreamWagon.put(StreamWagon.java:163)
         at 
org.apache.maven.artifact.manager.DefaultWagonManager.putRemoteFile(DefaultWagonManager.java:317)
         at 
org.apache.maven.artifact.manager.DefaultWagonManager.putArtifact(DefaultWagonManager.java:227)
         at 
org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:107)
         at 
org.apache.maven.plugin.deploy.DeployMojo.execute(DeployMojo.java:190)
         at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
         at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
         at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
         at 
org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
         at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
         at 
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
         at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to