maven发布期间突然编译错误

时间:2012-03-28 15:34:41

标签: java maven jenkins

我最近开始无法发布一个长期以来一直运行良好的maven项目。该项目由几个模块组成,其结构类似于:

project_server
  project_webserver
  project_qp
    project_qp_ingr
  project_repo
    project_repo_ingr

两个模块project_qp和project_repo都依赖于带有$ {project.version}引用的project_webserver。

使用Jenkins构建项目,在构建快照构建时一切正常。 当我尝试在带有选项/目标“-Dresume = false release:prepare release:perform -e”的maven发布版本配置中使用版本3.1-RC1构建版本时,一切都在“清理,验证”阶段正常工作,但是在“deploy,site-deploy”中,project_repo突然无法编译。

编译错误包括模块没有从project_webserver模块中查找类。但是,project_qp_ingr模块已经构建并且工作正常。

所有这些都告诉我,从project_repo_ingr到project_webserver的引用有问题,但是因为在构建快照版本时项目构建正常。

project_repo_ingr的pom看起来像:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>project_repo_ingr</artifactId>
<name>project_repo_ingr</name>
<packaging>jar</packaging>

<parent>
    <groupId>com.apptus.ecom</groupId>
    <artifactId>project_repo</artifactId>
    <version>3.1.0-SNAPSHOT</version>
</parent>

<dependencies>
    <dependency>
        <groupId>com.apptus.ecom</groupId>
        <artifactId>project_webserver</artifactId>
        <version>${project.version}</version>
    </dependency>

    <!-- Test dependencies -->
    <dependency>
        <groupId>com.apptus.ecom</groupId>
        <artifactId>project_webserver</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
        <scope>test</scope>
    </dependency>
</dependencies>
</project>

我省略了一些依赖关系,但这几乎就是它。模块project_repo_ingr和project_qp_ingr都依赖于常规工件和测试jar。

我使用Java 6,Maven 2和Jenkins 1.436以及M2 Release Plugin 0.8.1。

非常感谢任何帮助,我整天都在为此烦恼。

更新: 自上次工作以来我所做的更改是将svn repo从trunk分支到release分支。 trunk中的jenkins作业已复制到分支中,并且svn路径已更改。我还更新了project_server pom的一部分。

0 个答案:

没有答案