【问题标题】:Build dependency issue with Grails and Maven使用 Grails 和 Maven 构建依赖问题
【发布时间】:2012-03-16 13:28:27
【问题描述】:

我正在尝试将 Google 的 JSON RPC 库集成到我的 Grails 项目中。 Maven的配置是here,我也从网站上拿了sn-p...

<dependencies>
   <dependency>
      <groupId>org.json.rpc</groupId>
      <artifactId>jsonrpc</artifactId>
      <version>1.0</version>
   </dependency>
</dependencies>

<repositories>
   <repository>
      <id>json-rpc</id>
      <url>http://json-rpc.googlecode.com/svn/mavenrepo</url>
   </repository>
</repositories>

所以,我把上面的 Maven 配置放到我项目的BuildConfig.groovy..

grails.project.dependency.resolution = {
  repositories{
    mavenRepo "http://json-rpc.googlecode.com/svn/mavenrepo"
  }

  dependencies {
    compile "org.json.rpc:jsonrpc:1.0"
  }
}

当我刷新项目依赖项时,Grails 会抛出此错误..

org.json.rpc#jsonrpc;1.0: java.text.ParseException: 不一致 模块描述符文件在 'http://json-rpc.googlecode.com/svn/mavenrepo/org/json/rpc/jsonrpc/1.0/jsonrpc-1.0.pom': 错误的修订:预期='1.0' found='1.0-SNAPSHOT';

我不确定这是 Google 存储库的问题还是我的配置的问题。根据错误消息,Grails 似乎期待来自 pom 的1.0-SNAPSHOT,因此我将构建文件更改为compile "org.json.rpc:jsonrpc:1.0-SNAPSHOT",但这会导致“找不到模块”错误消息。

【问题讨论】:

    标签: grails maven dependency-management google-code json-rpc


    【解决方案1】:

    看起来存储库中的 pom 文件有问题:

    <groupId>org.json.rpc</groupId>
        <artifactId>jsonrpc</artifactId>
        <name>JSON-RPC</name>
        <version>${jsonrpc.version}</version>
    
        <properties>
            <jsonrpc.version>1.0-SNAPSHOT</jsonrpc.version>
            <java.version>1.5</java.version>
    
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    

    工件是 1.0 版,但 pom 文件中的版本定义为 1.0-SNAPSHOT。

    【讨论】:

    • 我下载 JAR 和 pom,更新 pom,创建我自己的本地 repo,然后指向它怎么样?如果项目端没有人会修复它,至少我现在可以解决这个问题
    • @RaffiM 你可以这样做,或者只是下载 jar 并将其放在你的 lib 目录中,直到他们解决 pom 问题。
    猜你喜欢
    • 1970-01-01
    • 2015-08-11
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-21
    • 1970-01-01
    相关资源
    最近更新 更多