编辑:我通过将插件从“配置文件”部分移到常规构建插件部分中来解决了该问题,即使我不理解如何理解该插件的工作方式,在配置文件之外也未定义插件,因此甚至在正确的个人资料之外也无法访问它。
我有一个使用Maven的Vaadin 6.8应用程序,该应用程序不再找到其窗口小部件集,因此我想重新编译该窗口小部件集,但是由于以下错误而失败:
[错误]信息:搜索绘画。.[信息] [错误]'jar:文件中的错误:/home/username/.m2/repository/com/vaadin/vaadin/6.8.0/vaadin-6.8.0.jar !/com/vaadin/terminal/gwt/client/WidgetSet.java'[INFO] [ERROR]内部编译器错误[INFO] java.lang.OutOfMemoryError:org.apache.xerces.dom超出了GC开销限制[INFO]。 DeferredDocumentImpl.getNodeObject(未知来源)
设置`export MAVEN_OPTS =“-Xmx12000m”(请确保)后,它会分叉到另一个Xmx(512),但仍然会收到错误(htop代码段):
│ │ ├─ /opt/java/bin/java -Xmx12000m -classpath ...
│ │ ├─ /opt/java/jre/bin/java -Xmx512m -classpath ...
我的系统:Linux pcname 3.15.2-1-ARCH #1 SMP PREEMPT Fri Jun 27 07:41:19 CEST 2014 x86_64 GNU/Linux
,8 GB RAM
PS:我也将localworkers设置为1,并将fork设置为false,但这两个都不起作用。
编辑---托马斯的答案:我已经使用了extraJvMArgs。我在这里做错了什么吗?
<profile>
<id>compile-widgetset</id>
<build>
<plugins>
<!-- Compile custom GWT components or widget dependencies with the GWT
compiler -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>${gwt.plugin.version}</version>
<configuration>
<localWorkers>1</localWorkers>
<fork>false</fork>
<webappDirectory>src/main/webapp/VAADIN/widgetsets</webappDirectory>
<extraJvmArgs>-Xmx2000M -Xss1024k -XX:+UseConcMarkSweepGC</extraJvmArgs>
<runTarget>autosparql-tbsl</runTarget>
<hostedWebapp>${project.build.directory}/${project.build.finalName}</hostedWebapp>
<noServer>true</noServer>
<port>9090</port>
<compileReport>false</compileReport>
</configuration>
<executions>
<execution>
<goals>
<goal>resources</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<version>${gwt.version}</version>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwt.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-maven-plugin</artifactId>
<version>1.0.2</version>
<executions>
<execution>
<configuration>
</configuration>
<goals>
<goal>update-widgetset</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
PS:我现在使用“ mvn -X gwt:compile”,它只显示默认的512M:
[DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>
<configuration>
[...]
<extraJvmArgs default-value="-Xmx512m">${gwt.extraJvmArgs}</extraJvmArgs>
所述-Xmx
的叉形JVM被设置在GWT-Maven的插件配置:https://gwt-maven-plugin.github.io/gwt-maven-plugin/compile-mojo.html#extraJvmArgs
extraJvmArgs:
传递给GWT-Maven生成的脚本的额外JVM参数(用于编译器,shell等-在此通常使用-Xmx512m或-XstartOnFirstThread等)。可以从命令行使用'-Dgwt.extraJvmArgs = ...'进行设置,默认情况下将最大堆大小设置为对于大多数GWT用例而言足够大。
- 类型:
java.lang.String
- 必填项:
No
- 用户属性:
gwt.extraJvmArgs
- 默认值:
-Xmx512m
在此MAVEN_OPTS
不使用为Maven执行指定的参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句