我需要 Eclipse 专家。我有一个项目在类路径中引用另一个项目以使用所有类和数据对象。第一个应用程序是 AppEngine 项目。第二个应用程序只是一个要导入的普通旧 Java 命令行应用程序。当它在代码中执行这一行时,我遇到了这个错误。第二个项目设置为导入第一个项目。我试图从一个项目的构建路径中排除 3 个 Datanucleus JAR,但随后它提示这些类没有得到增强。我还尝试在第二个“导入”项目中添加 AppEngine 和删除 AppEngine。
错误
Caused by: org.datanucleus.exceptions.NucleusException: Plugin (Bundle) "org.datanucleus" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/C:/Users/Chloe/Documents/Onix/mwv-pic/war/WEB-INF/lib/datanucleus-core-3.1.3.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/C:/Users/Chloe/.eclipse/org.eclipse.platform_4.3.0_587203511_win32_win32_x86_64/plugins/com.google.appengine.eclipse.sdkbundle_1.8.6/appengine-java-sdk-1.8.6/lib/opt/user/datanucleus/v2/datanucleus-core-3.1.3.jar."
代码
instance = Persistence.createEntityManagerFactory("transactions-optional");
项目属性
版本
datanucleus-core-3.1.3.jar
最佳答案
我能够进入第一个项目,查看项目属性 > 构建路径 > 库 > 删除 datanucleus-core.jar、datanucleus-api-jdo.jar、datanucleus-api-jpa.jar。这三个已经在 AppEngine 库中。如果您进一步向下滚动并展开“AppEngine SDK”组,您会看到它们也列在那里。所以他们不必被列出两次。我不知道为什么第一个应用程序可以毫无问题地工作,但如果您将项目导入另一个项目(将其放在类路径中),它就无法工作。
关于java - 如何将 Datanucleus 与多个 Eclipse 项目一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20257773/