فشل مخضرم التجمع المساعد مع NullPointerException؟
-
06-07-2019 - |
سؤال
وأحصل على NullPointerException وأنا لا أحب ذلك. وهو بناء أكبر مع العديد من الوحدات الفرعية (والتي تختلف في التكوين مخضرم بهم إلا قليلا)، بالنسبة لمعظم الوحدات أنه لا عمل، ولكن ليست كذلك. أي أفكار ما قد تكون المشكلة؟
[INFO] [assembly:assembly]
[INFO] Reading assembly descriptor: src/assemble/all.xml
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] null
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.NullPointerException
at org.apache.maven.artifact.DefaultArtifact.equals(DefaultArtifact.java:358)
at java.util.HashMap.put(HashMap.java:376)
at java.util.HashSet.add(HashSet.java:200)
at java.util.AbstractCollection.addAll(AbstractCollection.java:305)
at org.apache.maven.plugin.assembly.artifact.DefaultDependencyResolver.buildManagedVersionMap(DefaultDependencyResolver.java:160)
at org.apache.maven.plugin.assembly.archive.DefaultAssemblyArchiver.createArchive(DefaultAssemblyArchiver.java:179)
at org.apache.maven.plugin.assembly.mojos.AbstractAssemblyMojo.execute(AbstractAssemblyMojo.java:370)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:553)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:523)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:268)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 41 seconds
[INFO] Finished at: Fri Jun 19 10:44:03 CEST 2009
[INFO] Final Memory: 32M/99M
[INFO] ------------------------------------------------------------------------
المحلول
وعند النظر إلى خط 358 من مراجعة الرأس، وتخميني هو أن شيئا ما، في مكان ما لا يوجد لديه نسخة محددة.
وأنا لا حقا "معرفة" مخضرم، ولكن أود أن أقترح مراجعة الإصدارات الخاصة بك بعناية. بطبيعة الحال، فإنه من الممكن أن أنا لا أبحث في شفرة المصدر نفسه الذي تستخدمه - إلقاء نظرة على مصدر لإصدار الفعلي لمعرفة ما هو في خط DefaultArtifact.java 358
نصائح أخرى
إذا اقترحت الإصدارات لا يتم إفراغ مثل جون-السكيت أنه يمكن أن يكون خطأ مخضرم-المنفذ البرنامج المساعد: https://issues.apache.org/jira/browse/MENFORCER-156
وأساسا، مخضرم، المنفذ البرنامج المساعد (في الإصدار على الأقل 1.3) "يضع MavenProject
في حالة حيث أنه يدعي أن كافة التبعيات يتم حلها، ولكن لا بد من ملفات قطعة أثرية."
وبالنسبة لي هذا عينه مرة أخرى في الإصدار 1.4.1.