我正在尝试为我们的产品生成一个包含 API SDK 的 jar 文件,以便我们的客户可以创建插件并针对我们的 API 进行编译。我们作为 API SDK jar 的一部分提供的所有类/接口也包含在我们的主要产品中,因此 API 开发人员不需要将我们的 API SDK jar 包含到他们的插件 jar 中。因此,我不担心我们的 API SDK jar 的大小。但是,我想让插件开发人员的生活更轻松,并且只提供一个包含已编译类和 javadoc 的 jar 文件(这样开发人员可以在开发时将内联注释视为自动完成功能的一部分)。
我们使用 Maven 编译,我在 API SDK pom.xml 中添加了以下配置:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>attach-javadoc</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
这可行,但是这会生成两个 jar 文件 - 一个带有已编译的类,一个带有 javadoc。相反,我想只生成一个包含所有内容的 jar 文件。
我们目前使用 Maven 来编译这个项目,但是我们可以自由地使用其他构建工具。