在我正在研究的java项目中,我需要使用一些非常大的protobufs。 protoc生成的.java文件之一大约为8.3 MB。当我在eclipse中将该文件添加到我的项目时,它会无限期地挂起。
有什么方法可以解决这个问题吗?也许用javac预编译那个文件并告诉eclipse不要费心去构建它?
答案 0 :(得分:0)
在Maven中将Javac -target 1.7从Javac -target 1.7移到1.8时,我也遇到这个问题,编译我的项目需要10多分钟。
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
我发现这是Oracle Hotspot JDK编译器中的错误,因为我也有IBM SDK,并且项目的编译速度非常快(不到一分钟)。
java version "1.8.0"
Java(TM) SE Runtime Environment (build pwi3280sr2-20151023_01(SR2))
IBM J9 VM (build 2.8, JRE 1.8.0 Windows 7 x86-32 20151019_272764 (JIT
enabled, AOT enabled)
J9VM - R28_Java8_SR2_20151019_2144_B272764
JIT - tr.r14.java_20151006_102517.04
GC - R28_Java8_SR2_20151019_2144_B272764
J9CL - 20151019_272764)
JCL - 20151022_01 based on Oracle jdk8u65-b17
因此,希望这可以帮助其他在为目标1.8挂起或花很多时间完成目标1.8的源代码时遇到问题的开发人员。最好使用IBM SDK Java编译器。
编辑1.
IBM Sdk现在是开源的,称为OpenJ9,可以在以下URL的Windows 64位上获得: jdk8u181-b13_openj9-0.9.0
这是免费的,并且具有与IBM SDK 8 for Windows相同的性能,后者不再可免费下载。
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
Eclipse OpenJ9 VM (build openj9-0.9.0, JRE 1.8.0 Windows 7 amd64-64-Bit
Compressed References 20180813_153 (JIT enabled, AOT enabled)
OpenJ9 - 24e53631
OMR - fad6bf6e
JCL - a05586ac based on jdk8u181-b13)