这是eclipse .classpath
文件的一个例子
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/main/resources"/>
<classpathentry kind="src" output="bin/test" path="src/test/java"/>
<classpathentry kind="src" output="bin/test" path="src/test/resources"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/slf4j-api-1.7.7.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/slf4j-log4j12-1.7.7.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-collections4-4.0.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-codec-1.6.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-io-2.4.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-cli-1.2.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-net-3.3.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/commons-lang-2.4.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/opencsv-2.3.jar"/>
<classpathentry kind="lib" path="/kc-tools-thirdparty/lib/log4j-1.2.17.jar"/>
<classpathentry kind="output" path="bin/main"/>
</classpath>
在gradle中,我想自动将它们添加到依赖项中。
有没有可以做到这一点的插件? (我知道我可以编写自己的方法来解析XML,但我正在寻找一些通用的方法)
答案 0 :(得分:4)
我没有测试过,但我会做这样的事情:
//Init classpath file
def classpathFile = file('.classpath')
//parse xml
def cpXml = new XmlParser().parse(classpathFile)
//find all lib entries
def libPaths= []
cpXml.classpathentry.each {
if('lib' == it.@kind) {
libPaths.add(project.projectDir.parentFile.absolutePath + it.@path)
}
}
dependencies{
compile files(libPaths)
}