本文介绍了在我的Gradle Java项目中使用本地jar作为依赖项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个名为mylib.jar
的本地jar文件.我想将其用作Gradle Java项目中的依赖项.
I have a local jar file named mylib.jar
. I want to used it as a dependency in my Gradle Java project.
这是我尝试过的:
我在项目根目录下创建了一个libs/
文件夹.我将jar文件放在libs/
文件夹下.
I created a libs/
folder under project root. I put the jar file under libs/
folder.
MyProject
->libs/mylib.jar
->build.gradle
->src/...
在我的build.gradle中:
In my build.gradle:
apply plugin: 'java-library'
group 'com.my.app'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
flatDir {
dirs 'libs'
}
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
api files('libs/mylib.jar')
}
但是我无法在我的项目代码中访问在mylib.jar
中定义的公共类.为什么?
But I can't access the public classes defined in mylib.jar
in my project code. Why?
=====更多信息=====
我的罐子里的东西:
mylib.jar
> com.my.jar.package
>ClassFromJar.class
这是我使用罐子的方法:
Here is how I use the jar:
// Compilation error: Cannot resolve symobl 'ClassFromJar'
import com.my.jar.package.ClassFromJar;
public class MyEntryPoint {
// Compilation error: Cannot resolve symbol 'ClassFromJar'
ClassFromJar instance = new ClassFromJar();
}
推荐答案
- 本地目录
repositories {
flatDir {
dirs 'libs'
}
}
- 相对路径:
dependencies {
implementation files('libs/mylib.jar')
}
- 使用
compile fileTree
:
compile fileTree(dir: 'libs', include: 'mylib.jar')
这篇关于在我的Gradle Java项目中使用本地jar作为依赖项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!