2017-08-01 41 views
0

对于几乎所有的Java项目,我都定义了一个新的Gradle任务来构建带有javadoc的jar。具体来说,我添加以下几乎所有build.gradleIntellij:定义用于所有新Java项目的默认任务

task jarJavadoc(type: Jar, dependsOn: ['javadoc']) { 
    classifier = 'javadoc' 
    from javadoc.destinationDir 
} 

artifacts { 
    archives jarJavadoc 
} 

是否有配置的IntelliJ这样它会自动将这些线的每一个新的摇篮Java项目的方法吗?

+1

你可以开发一个摇篮插件,它实现了这个功能。然后,你只需要在相应的Gradle构建文件中应用该插件即可。 –

回答

2

我想你可以探索一些选项:

  • 第一个是你的GRADLE_HOME目录中创建一个gradle这个文件(例如:init.gradle)(例如〜/ .gradle/)并在那里定义公共部分。在处理构建脚本时,Gradle始终应用这些文件first。请注意,您配置的所有内容都将在您机器上每个Gradle项目的 中提供。这意味着例如如果您依赖于Java插件上的 (就像您在您提供的示例中那样)并且创建了其他不依赖于Java的项目,则此方法可能会产生 配置错误,请谨慎使用它。

  • 您可以编写一个简单的Gradle插件,将您需要的常见任务添加到项目中。通过这种方法,您仍然需要复制apply plugin: 'your plugin'

  • 您可以利用File and Code templates并更新Gradle构建脚本模板以包含公共代码。
  • 你也可以混合最后2个例子并编写一个配置常用任务的插件并修改Gradle构建脚本模板以包含你的插件。
0

您可以应用nebula.javadoc-jar插件。

如:

plugins { 
    id 'nebula.javadoc-jar' version '5.1.0' 
} 
相关问题