java - Eclipse Gradle STS 插件。添加项目引用与依赖管理

标签 java eclipse gradle dependency-management sts-springsourcetoolsuite

我有 Eclipse 工作区,其中有 2 个项目(我们称它们为主项目和从项目)。我想对从项目使用 gradle 依赖管理。除了主项目的链接之外,一切都像魅力一样。

刷新依赖项后,STS gradle 插件会静默删除主项目的链接(根据 bug STS-3082 )。我希望我能以某种方式指示 gradle 将该链接添加到我的类路径中。我又尝试了一个 src 文件夹,但没有成功。

欢迎任何建议。

build.gradle

apply plugin: 'eclipse'
apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile fileTree(dir: 'lib', include: '**/*.jar')
    compile 'org.mockito:mockito-all:1.8.5'
    compile 'org.powermock:powermock-api-mockito:1.4.8'
}

sourceSets {
    main {
        java {
            srcDir '../Master/src'
            srcDir 'src'
        }
    }
}

.classpath

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry exported="true" kind="con" path="org.springsource.ide.eclipse.gradle.classpathcontainer"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

更新

要解决此问题,我必须注释行 srcDir '../Master/src' 并添加到 build.gradle

eclipse.classpath.file.withXml { xml ->
    def node = xml.asNode()
    node.appendNode('classpathentry', [ combineaccessrules: false, exported: true, kind: 'src', path: '/Master' ])
}

最佳答案

您可能需要求助于 http://www.gradle.org/docs/current/dsl/org.gradle.plugins.ide.eclipse.model.EclipseClasspath.html 中描述的 EclipseClasspath 中的 withXml Hook 。

关于java - Eclipse Gradle STS 插件。添加项目引用与依赖管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25907325/

相关文章:

java - 使用 JFrame 的简单 GUI 动画

java - 如何在Tomcat中定义上下文加载的顺序,或者定义上下文之间的一些依赖层次?

java - 设置 Controller 时出现异常

java - 无法启动 cygpath

android - 为什么我的 Android 应用程序查找/data/app/package_name-1/lib/arm/libLibrary.so 而不是使用文件夹 armeabi

java - Eclipse Indigo 中的 m2e 不再工作

eclipse - 我需要 Eclipse 来部署我的 ANT 脚本构建的 WAR 文件,而不是它在内部构建的文件

java - ORA-12505,TNS :listener does not currently know of SID

安卓 NDK- 错误 :Execution failed for task ':app:buildNative'

android - 如何在 React Native (android) 中同步 gradle?