3

我在 Eclipse 中的 .classpath 文件中添加了一个类路径条目,以避免在每次运行 .eclipse 任务时手动添加它,同时添加许多依赖项。我需要一些在本地运行的路径上的资源。

这有效,

eclipse.classpath.file {
   withXml { 
     def node = it.asNode()
     node.appendNode('classpathentry', 
                [kind: 'lib', path: '/some/path'])
           }
}

这不,

eclipse.classpath.file {
   whenMerged { classpath ->
      classpath.entries.add { entry -> kind: 'lib', path: '/some/path' }
              }
}

我得到的错误是,

启动失败:build.gradle':75:意外令牌:lib @ 第 75 行,第 48 列。.entries.add { entry -> kind:'lib',pat ^

为了将来参考,第二个例子有什么问题?

4

1 回答 1

3

等价物应该是这样的:

eclipse.classpath.file {
  whenMerged { classpath ->
    def lib = new org.gradle.plugins.ide.eclipse.model.Library(fileReference(file('path/to/my/jar')))
    lib.exported = true
    classpath.entries << lib
  }
}

请参阅 Gradle 文档以了解Library及其接口ClasspathEntry

于 2018-01-23T14:47:05.687 回答