试图在eclipse上找到摆脱这个错误的方法。
DataNucleus Enhancer (version 3.1.1) : Enhancement of classes
Encountered a problem: Unexpected exception
这是日志
java.lang.RuntimeException: Unexpected exception
at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:76)
at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:71)
at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:51)
Caused by: java.lang.reflect.InvocationTargetException
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 com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:74)
... 2 more
Caused by: java.lang.IllegalArgumentException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.datanucleus.enhancer.asm.ASMClassEnhancer.getClassNameForFileName(ASMClassEnhancer.java:272)
at org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:727)
at org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:525)
at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1258)
... 7 more
我有两个版本的java,一个是1.8.0_25,另一个是1.7.0_46
这是我的路径
C:\Program Files (x86)\Java\jre7\bin;;C:\oraclexe\app\oracle\product\11.2.0\server\bin;;C:\ProgramData\Oracle\Java\javapath;
作为默认我在eclipse上使用jre7,不知道还有什么值得一提的。我发现在这里或其他网站上没有明确解释的解决方案,而不是尝试更改java版本,尝试在我的计算机上的所有Java实例,卸载并再次安装。我猜它可能是关于java和datanucleus compability问题,但目前使用java7和我使用的插件是从eclipse自动下载所以没有线索。如果您需要任何澄清,请问我。
答案 0 :(得分:13)
如果您使用的是Java 8,则需要在项目属性中将编译器合规性级别设置为1.7。您还需要更改java facet版本
答案 1 :(得分:10)
请注意(GoogleAppEngine Enhancer Error Code 1:)
App Engine不适用于Java 1.8。尝试使用Java 1.7再次执行此操作
在项目设置中设置Java 1.7解决了我的问题。
答案 2 :(得分:8)
就像我猜到的那样,这完全取决于兼容性问题。如果您收到此错误,请确保您的日食和您的计算机使用的所有内容与所有版本的java相同。我的意思是你需要检查; 在eclipse中,从顶部菜单中选择Project-&gt; Properties,然后确保eclipse使用的所有java版本都是相同的。
和
和
当然你的环境变量应该指向eclipse使用的相同版本。
希望这会有所帮助。发表评论,如果你发现它不清楚。在开始编码之前得到错误很糟糕:p