从SVN Gradle编译项目

时间:2017-09-13 08:51:58

标签: java gradle

我在同一个SVN中有两个项目,即LOG和MAIN。

MAIN使用LOG中的方法,因此我想将LOG添加为依赖项。

以前我将LOG复制到我的本地目录并在gradle设置下使用来编译LOG。

设置:

include "LOG"
project(":LOG").projectDir = file("../LOG")

由于两者都是不同的项目,我们希望直接从SVN构建LOG。

我在build.gradle下面使用但是它显示如下错误。

的build.gradle:

repositories {

    ivy {
        url 'http://13.126.60.33/datastudio/DataStudio_Java/DataStudio_Java_Logger/Branch/Development/DataStudio_Java_Logger'
        credentials {
            username 'mob140003207'
            password 'VIGkalai1'
        }
    }
}

dependencies {

    compile project("DataStudio_Java_Logger")
}

错误:

Caused by: org.gradle.internal.component.model.ConfigurationNotFoundException: Project : declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :DataStudio_Java_Logger.

有没有办法做到这一点或我做错了什么。

1 个答案:

答案 0 :(得分:1)

正常的方法是让CI服务器(例如jenkins / travis)在每次更改时构建LOG项目并将LOG.jar上传到存储库(例如nexus / artifactory)。然后,MAIN项目将配置存储库(nexus / artifactory)并从那里下载jar文件。所以MAIN项目根本不了解SVN中的LOG源。

如果你真的想在MAIN项目中获取SVN的源代码(不推荐!!!)并在那里编译它们,你需要在LOG子项目中创建svnDownload任务。主要项目)。 javaCompile任务(LOG子项目)将取决于svnDownload任务。