我需要修改KIE Workbench源代码,我有两个问题阻止我使用Maven 3.2.5进行构建,一个在Windows上,另一个在Linux上。
在Windows7上,我收到一个错误,上面写着
[deletia...]SNAPSHOTuberfire-backend-api-0.4.0-SNAPSHOT-sources.jar,
com.google.gwt.dev.Compiler,-logLevel, INFO, -style, OBF, -war,
c:kie-wb-webapptargetkie-wb-webapp-6.1.1-SNAPSHOT, -localWorkers, 1,
-strict, -XfragmentCount, -1, -deploy, c:kie-wb-webapptargetgwt-symbols-deploy, -gen,
c:kie-wb-webapptarget.generated, org.kie.workbench.FastCompiledKIEWebapp]:
Error while executing process. Cannot run program "c:developmentsoftwarejdkjdk1.7.0_71jrebinjava":
CreateProcess error=206, The filename or extension is too long.
所以我查了一下,很明显,这是众所周知的限制,因为gwt-maven插件创建的命令行长度超过8191个字符,这是被禁止的。所以我在Ubuntu上尝试了一下。
在Ubuntu上,
我得到:
[INFO] --- gwt-maven-plugin:2.5.1:compile (gwt-compile) @ kie-wb-webapp [ERROR] Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
[ERROR] Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
[INFO] Compiling module org.kie.workbench.FastCompiledKIEWebapp
[INFO] Validating units:
[INFO] [ERROR] Errors in 'jar:file:/home/rich/.m2/repository/com/google/guava/guava-gwt/14.0.1/guava-gwt-14.0.1.jar!/com/google/common/primitives/Booleans.java'
[INFO] [ERROR] Line 29: The import java.util.BitSet cannot be resolved
[INFO] [ERROR] Aborting compile due to errors in some input files
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE*
找到解决其中一个或两个问题的方法非常重要(我的猜测是,如果我在Windows上清除命令行问题,我只会再次遇到番石榴问题)。此外,除非绝对必要,否则我不能升级到6.2.x,因为这会给我的项目带来很多工作。
有人碰到过这个吗?
如果您不需要Java 8支持,您可以使用JDK的早期版本来解决这个问题。我相信您可以通过为Maven运行设置JAVA_HOME
来实现这一点。您可以在这里下载JDK7。
你也可以自己从HEAD构建Guava,因为这个问题已经在那里解决了,但没有包含在发布中。或者你可以等待19.0-rc1,我们希望很快就能推出。