如何解决这些maven 2警告?

时间:2011-04-01 17:14:25

标签: maven-2 grails

我正在使用Maven 2.2和Grails 1.2.1。当我试图运行“集成测试”目标时,我得到一些神秘的警告,我无法弄清楚如何解决......

davea-mbp2:socialmediaproxy davea $ mvn integration-test
[信息]扫描项目......
[警告]
[警告]在为socialmediaproxy构建有效模型时遇到了一些问题:socialmediaproxy:war:0.1
[警告] org.apache.maven.plugins的'build.plugins.plugin.version':缺少maven-compiler-plugin。 @第125行,第15栏 [警告] net.sf.ehcache的'dependencies.dependency.exclusions.exclusion.groupId':缺少ehcache-core:jar。 @第33行,第22栏 [警告] net.sf.ehcache的'dependencies.dependency.exclusions.exclusion.groupId':缺少ehcache-core:jar。 @第36行,第22栏
[警告] net.sf.ehcache的'dependencies.dependency.exclusions.exclusion.groupId':缺少ehcache-core:jar。 @第41行,第22栏 [警告]
[警告]强烈建议修复这些问题,因为它们会威胁到构建的稳定性 [警告]
[警告]因此,未来的Maven版本可能不再支持构建此类格式错误的项目 [警告]

以下是我的pom.xml中警告所指的部分......

<!-- Grails defaults to Ehache for the second-level Hibernate cache. -->
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-ehcache</artifactId>
      <version>3.3.1.GA</version>
    </dependency>

    <dependency>
      <groupId>net.sf.ehcache</groupId>
      <artifactId>ehcache-core</artifactId>
      <version>1.7.1</version>
  <exclusions>
      <exclusion> <!-- line 33 -->
          <artifactId>jms</artifactId>
      </exclusion>
      <exclusion> <!-- line 36 -->
          <artifactId>servlet-api</artifactId>
      </exclusion>

      <!-- We have JCL-over-SLF4J instead. -->
      <exclusion>
          <artifactId>commons-logging</artifactId>
      </exclusion>
  </exclusions>
    </dependency>

我有什么想法可以解决这些问题?谢谢, - 戴夫

1 个答案:

答案 0 :(得分:1)

您的pom.xml排除项中的配置错误 - 您需要添加groupId条目。我不确切知道他们需要什么(可能是javax.jms),但只需要在必要时替换fixme。

<dependency>
      <groupId>net.sf.ehcache</groupId>
      <artifactId>ehcache-core</artifactId>
      <version>1.7.1</version>
  <exclusions>
      <exclusion> <!-- line 33 -->
          <groupId>fixme</groupId>
          <artifactId>jms</artifactId>
      </exclusion>
      <exclusion> <!-- line 36 -->
          <groupId>fixme</groupId>
          <artifactId>servlet-api</artifactId>
      </exclusion>

      <!-- We have JCL-over-SLF4J instead. -->
      <exclusion>
          <groupId>fixme</groupId>
          <artifactId>commons-logging</artifactId>
      </exclusion>
  </exclusions>
    </dependency>