Java 格拉德尔“;编译文件树“;拒绝工作

Java 格拉德尔“;编译文件树“;拒绝工作,java,gradle,build.gradle,Java,Gradle,Build.gradle,我正在处理一个具有大量本地依赖项的Java项目。“我的库”文件夹的格式如下: projectroot\lib\com\google\code\gson\gson\2.8.0\gson-2.8.0.jar projectroot\lib\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar etc Gradle在使用fileTree时不添加依赖项。这是我正在使用的代码: compile fileTree(dir

我正在处理一个具有大量本地依赖项的Java项目。“我的库”文件夹的格式如下:

projectroot\lib\com\google\code\gson\gson\2.8.0\gson-2.8.0.jar
projectroot\lib\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar
etc


Gradle在使用fileTree时不添加依赖项。这是我正在使用的代码:

compile fileTree(dir: '${projectDir}/lib', includes: ['*.jar'])
or
compile fileTree(dir: 'lib', includes: ['*.jar'])


但是,Gradle在使用以下代码时不会按预期工作:

compile files("${projectDir}/lib/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar")

这个能用吗

compile fileTree(dir: '${projectDir}/lib', includes: ['**/*.jar'])

这个能用吗

compile fileTree(dir: '${projectDir}/lib', includes: ['**/*.jar'])

使用文件树声明依赖项是一种不好的方法,因为它们不能参与。看起来您的lib目录遵循,因此我建议您改为执行以下操作

repositories {
   maven {
       url uri("${projectDir}/lib")
   }
} 
dependencies {
   compile 'com.google.code.gson:gson:2.8.0'
   compile 'org.apache.commons:commons-compress:1.8.1' 
} 

使用文件树声明依赖项是一种不好的方法,因为它们不能参与。看起来您的lib目录遵循,因此我建议您改为执行以下操作

repositories {
   maven {
       url uri("${projectDir}/lib")
   }
} 
dependencies {
   compile 'com.google.code.gson:gson:2.8.0'
   compile 'org.apache.commons:commons-compress:1.8.1' 
}