Tôi đang gặp sự cố khi thiết lập bộ tăng cường dữ liệu để sử dụng với dự án công cụ ứng dụng của google. Nếu tôi sử dụng các plugin eclipse datanucleus mọi thứ diễn ra tốt đẹp, nhưng trong dự án maven của tôi, tôi nhận được một lỗi phiên bản mâu thuẫn lạ.Các phiên bản xung đột của tăng cường nhân tố cơ trong dự án động cơ ứng dụng google maven
POM của tôi có những DataNucleus tham khảo:
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>1.1.0</version>
</dependency>
...
<plugin>
<groupId>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<version>1.1.0</version>
<configuration>
<mappingIncludes>**/*.class</mappingIncludes>
<verbose>true</verbose>
<enhancerName>ASM</enhancerName>
<api>JDO</api>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
</plugin>
Khi tôi cố gắng xây dựng các dự án tôi nhận được lỗi sau:
Exception in thread "main" Plugin (Bundle) "org.datanucleus" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/Users/drome/.m2/repository/org/datanucleus/datanucleus-core/1.1.0/**datanucleus-core-1.1.0.jar**" is already registered, and you are trying to register an identical plugin located at URL "file:/Users/drome/.m2/repository/org/datanucleus/datanucleus-core/1.1.3/**datanucleus-core-1.1.3.jar**." 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:/Users/drome/.m2/repository/org/datanucleus/datanucleus-core/1.1.0/datanucleus-core-1.1.0.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/Users/drome/.m2/repository/org/datanucleus/datanucleus-core/1.1.3/datanucleus-core-1.1.3.jar." at org.datanucleus.plugin.NonManagedPluginRegistry.registerBundle(NonManagedPluginRegistry.java:437) at org.datanucleus.plugin.NonManagedPluginRegistry.registerBundle(NonManagedPluginRegistry.java:343) at org.datanucleus.plugin.NonManagedPluginRegistry.registerExtensions(NonManagedPluginRegistry.java:227 ) at org.datanucleus.plugin.NonManagedPluginRegistry.registerExtensionPoints(NonManagedPluginRegistry.jav a:159) at org.datanucleus.plugin.PluginManager.registerExtensionPoints(PluginManager.java:82) at org.datanucleus.OMFContext.(OMFContext.java:164) at org.datanucleus.enhancer.DataNucleusEnhancer.(DataNucleusEnhancer.java:171) at org.datanucleus.enhancer.DataNucleusEnhancer.(DataNucleusEnhancer.java:149) at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1157)
Tôi không hiểu tại sao DataNucleus cần maven tải DataNucleus -core-1.1.3.jar vì điều này không được tham chiếu trong pom.xml
Tôi cũng không hiểu tại sao datanucleus-core-1.1.3.jar đang được đăng ký ...
Bất kỳ ý tưởng nào? Cảm ơn trước ...
Tôi không nghĩ rằng có thể loại trừ một phiên bản khác của cùng một tạo phẩm. nhóm một vật-một 1,0 nhóm c loại trừ-vật –
ivo
Plugin DN M2 không chỉ hợp lý điều nó có thể làm ; sử dụng mới nhất. Tôi thấy không có cách nào khác để có một plugin M2 và không phải phát hành một phiên bản mới mỗi khi chúng tôi phát hành một phiên bản mới của một lọ phụ thuộc và là những gì phạm vi phiên bản M2 đã được giới thiệu cho. Những người khác đã không có xử lý này http://groups.google.com/group/google-appengine-java/browse_thread/thread/aeaffa3f33e1e4e2/095300c75cd9da39?lnk=gst&q=maven-datanucleus#095300c75cd9da39 Rõ ràng Google cập nhật vấn đề lọ plugin DN của họ có nghĩa là nó không liên quan. – DataNucleus
Theo liên kết bạn đã cung cấp, thực sự thay đổi phạm vi thành 'thời gian chạy' đã khắc phục sự cố. Cảm ơn sự hỗ trợ :-) – ivo