在Maven发布期间,*sources.jar是如何生成的?
我确信我的插件中没有maven source插件,但是在发布期间总是会生成一个[project name]-sources.jar:perform。在构建生命周期的其他阶段,它似乎没有这样做 不幸的是,这个[project name]-sources.jar被上传到我们的存储库Nexus。管理层希望所有源都保存在SVN中,并远离存储库 我该怎么做?这当然不是大会问题。我们尝试了不同的构建概要文件,但是[project name]-sources.jar仍然存在。我们只是不希望在发布期间将任何源代码上载到存储库 有什么想法吗 提前谢谢 以下是我们在标签中使用的所有内容:在Maven发布期间,*sources.jar是如何生成的?,maven,maven-release-plugin,Maven,Maven Release Plugin,我确信我的插件中没有maven source插件,但是在发布期间总是会生成一个[project name]-sources.jar:perform。在构建生命周期的其他阶段,它似乎没有这样做 不幸的是,这个[project name]-sources.jar被上传到我们的存储库Nexus。管理层希望所有源都保存在SVN中,并远离存储库 我该怎么做?这当然不是大会问题。我们尝试了不同的构建概要文件,但是[project name]-sources.jar仍然存在。我们只是不希望在发布期间将任何源代
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<compilerArgument>-Xlint:all</compilerArgument>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
<!-- Release Reference: http://maven.apache.org/maven-release/maven-release-plugin/index.html -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<tagBase>http://some.url.here</tagBase>
<checkModificationExcludes>
<checkModificationExclude>.classpath</checkModificationExclude>
<checkModificationExclude>.factorypath</checkModificationExclude>
<checkModificationExclude>.project</checkModificationExclude>
<checkModificationExclude>.rest-shell.log</checkModificationExclude>
<checkModificationExclude>.springBeans</checkModificationExclude>
<checkModificationExclude>.apt-generated/**</checkModificationExclude>
<checkModificationExclude>.settings/**</checkModificationExclude>
<checkModificationExclude>src\main\resources\rebel.xml</checkModificationExclude>
</checkModificationExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.2</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<archive>
<index>true</index>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
<manifestEntries>
<version>${project.version}</version>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
简单的回答是,在发布运行期间,将附加到构建生命周期包阶段,该阶段由属性performRelease激活。这是在 以下是超级pom的适当部分: 发布配置文件 性能释放酶 符合事实的 符合事实的 maven源插件 附加来源 罐子 符合事实的 maven javadoc插件 附加javadocs 罐子 符合事实的 maven部署插件 符合事实的
简单的回答是,在发布运行期间,将附加到构建生命周期包阶段,该阶段由属性performRelease激活。这是在 以下是超级pom的适当部分: 发布配置文件 性能释放酶 符合事实的 符合事实的 maven源插件 附加来源 罐子 符合事实的 maven javadoc插件 附加javadocs 罐子 符合事实的 maven部署插件 符合事实的
因此,如果有人想了解周围的工作,下面是我自己问题的答案:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
...
<useReleaseProfile>false</useReleaseProfile>
...
</configuration>
</plugin>
</plugins>
因此,如果有人想了解周围的工作,下面是我自己问题的答案:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
...
<useReleaseProfile>false</useReleaseProfile>
...
</configuration>
</plugin>
</plugins>
顺便说一句:你正在使用非常旧版本的插件。顺便说一句:你正在使用非常旧版本的插件。这正是根本原因,Maven发布的插件文档清楚地表明useReleaseProfile默认为true;因此,如果不关闭它,它将使用super POM的maven源代码插件。我真的很感激你的回答。感谢@khmarbaiseth这正是根本原因,Maven发布插件文档清楚地表明useReleaseProfile默认为true;因此,如果不关闭它,它将使用super POM的maven源代码插件。我真的很感激你的回答。谢谢@khmarbaise