2014-11-06 69 views
0

我正在尝试从相关项目集合like so中生成一组javadoc集合。maven-javadoc-plugin:如何排除违反Java包命名约定的资源文件夹?

简而言之,这个POM项目声明了一堆依赖关系,然后使用maven-javadoc-plugin<includeDependencySources>true</includeDependencySources>选项。

某些依赖项在其资源中有一个script-templates文件夹,它被maven-source-plugin集中到“-sources”JAR中。

不幸的是,似乎javadoc工具不喜欢违反java包命名约定的文件夹。所以,我最终构建失败:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.9.1:jar (attach-javadocs) on project imagej-javadoc: MavenReportException: Error while creating archive: 
[ERROR] Exit code: 1 - javadoc: error - Illegal package name: "script-templates.Java" 

我尝试添加<excludePackageNames>script-templates</excludePackageNames>maven-javadoc-plugin配置,但它似乎没有任何效果。

有没有人有想法如何解决这个问题?

回答

0

您是否尝试过fakeClass源代码修改?

<sourceModifications> 
    <sourceModification> 
    <className>fakeClass</className> 
     <includes> 
     <include name="script-templates.java"/> 
     </includes> 
    </sourceModification> 
</sourceModifications> 
+0

我试图[此](https://github.com/imagej/imagej-javadoc/commit/40a227ec16f9cc2bf13b534ae42cf47fb263607b)。不幸的是,我仍然看到相同的错误。这是你的意思吗?你在哪里发现这个黑客? 5分钟搜索后,我找不到任何地方...... – ctrueden 2014-11-07 23:42:15

+0

这一点来自于[建议](http://community.jedit.org/?q=node/view/1663)jEdit使用Maven 。 – APerson 2014-11-08 00:49:07

+0

那个线程已经十岁了。我认为'sourceModifications'必须来自Maven 1;它在现代Maven POM参考中的任何地方都没有提及。是什么让你认为它与这个问题有关? – ctrueden 2014-11-11 04:56:20