我正在使用flexmojos-maven-plugin构建我的 Flex 模块。所以在编译阶段我得到
org.apache.maven.plugin.MojoExecutionException:编译错误!
没有关于错误发生的位置(在哪个源文件)以及编译错误的性质的信息。如果有人能指导我如何让 flexmojos-maven-plugin 打印有关编译错误的更多信息,我将不胜感激。
我正在使用flexmojos-maven-plugin构建我的 Flex 模块。所以在编译阶段我得到
org.apache.maven.plugin.MojoExecutionException:编译错误!
没有关于错误发生的位置(在哪个源文件)以及编译错误的性质的信息。如果有人能指导我如何让 flexmojos-maven-plugin 打印有关编译错误的更多信息,我将不胜感激。
我有一个类似的问题。第一个答案,在编译时获取更多信息是使用内置的 maven -X 选项。
mvn -X clean install
这将为您提供描述此错误发生位置的输出。对我来说,我遇到了与您遇到的错误非常相似的错误,它最终来自“Adobe 的代码”,可以这么说。
就我而言,通过浏览错误堆栈跟踪:
[ERROR] Failed to execute goal org.sonatype.flexmojos:flexmojos-maven-plugin:4.0-SNAPSHOT:sign-air
(default-sign-air) on project barebones-air: Error invoking AIR api: NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonatype.flexmojos:flexmojos-maven-plugin:4.0-SNAPSHOT:sign-air
(default-sign-air) on project barebones-air: Error invoking AIR api
...[other stacktrace output, snipped]...
Caused by: java.lang.NullPointerException
at com.adobe.air.ADTOutputStream.addApplicationDescriptor(ADTOutputStream.java:330)
at com.adobe.air.AIROutputStream.addApplicationDescriptor(AIROutputStream.java:63)
at com.adobe.air.ApplicationPackager.addSpecialFiles(ApplicationPackager.java:242)
at com.adobe.air.AIRPackager.addSpecialFiles(AIRPackager.java:172)
at com.adobe.air.ApplicationPackager.createPackage(ApplicationPackager.java:63)
at org.sonatype.flexmojos.plugin.air.packager.FlexmojosAIRPackager.createPackage(FlexmojosAIRPackager.java:72)
at org.sonatype.flexmojos.plugin.air.SignAirMojo.doPackage(SignAirMojo.java:332)
... 26 more
...[other stacktrace output, snipped]...
我可以说它与描述符文件有关。所以我打开了我的描述符文件并(基于一些谷歌搜索)更改了以下内容:
<content>[This value will be overwritten by Flash Builder in the output app.xml]</content>
至:
<content>MyAppName.swf</content>
和:
<visible>false</visible>
</initialWindow>
至:
<visible>true</visible>
</initialWindow>
第一个更改修复了空指针异常,第二个更改允许显示我的应用程序窗口。
我希望这可以帮助某人,
-gMale
此外,请务必在 Flexmojos 的配置中明确指向您的描述符:
<plugin>
<groupId>org.sonatype.flexmojos</groupId>
<artifactId>flexmojos-maven-plugin</artifactId>
<version>${flexmojos.version}</version>
<configuration>
<sourceFile>${application.name}.mxml</sourceFile>
<finalName>${application.name}</finalName>
<descriptorTemplate>${project.build.sourceDirectory}/${application.name}-app.xml</descriptorTemplate>
<storepass>${keystore.password}</storepass>
</configuration>
<extensions>true</extensions>
<dependencies>
<dependency>
<groupId>com.adobe.flex</groupId>
<artifactId>compiler</artifactId>
<version>${flex.sdk.version}</version>
<type>pom</type>
</dependency>
</dependencies>
</plugin>
我以前也遇到过这样的情况。事实证明,实际的错误消息隐藏在控制台输出的某处。
尝试将执行的 maven 命令生成的所有控制台输出复制粘贴到某处的文本编辑器中,然后搜索字符串“ERROR”。