repositories {
maven("https://libraries.minecraft.net")
}
dependencies {
implementation("com.mojang:authlib:3.11.49")
}Tag
Gradle
gradle打包依赖进jar
tasks.create<Jar>("fatJar") {
archiveBaseName.set(project.name + "-all")
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
manifest {
attributes["Main-Class"] = "top.e404.bot.loader.Main"
}
val exclude = listOf(
"LICENSE.txt",
"META-INF/MANIFSET.MF",
"META-INF/maven/**",
"META-INF/*.RSA",
"META-INF/*.SF"
)
val dependencies = configurations.runtimeClasspath.get().map(::zipTree)
from(dependencies).exclude {
it.path in exclude
}
with(tasks.jar.get())
}或者使用 shadow 插件
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.7.21"
id("com.github.johnrengelman.shadow") version "7.1.2"
}
group = "top.e404"
version = "1.0.0"
repositories {}
dependencies {}
tasks.shadowJar {
archiveFileName.set("${project.name}-${project.version}-all.jar")
}
如何查找Maven/Gradle依赖
阿里云(推荐)
搜索依赖 https://developer.aliyun.com/mvn/search
搜索依赖有两种模式,一种是使用关键词的搜索,另一种是知道依赖的group和artifact的情况下精准搜索
关键词

精准搜索

精准搜索时可以只填一个参数模糊匹配
这里点击蓝色的依赖名字,可以打开如下界面

这里也可以直接生成maven的依赖(虽然没有生成gradle格式的依赖,但是在IDEA中直接复制到build.gradle中是可以自动转换格式的)
中央仓库(不翻墙需要过人机验证)
搜索依赖 https://mvnrepository.com/
首先搜索,找到自己要的依赖并打开

找到自己需要的版本打开

可以看到此处显示了依赖的详细信息,下方还会自动生成各种格式的依赖,可以直接复制到项目里

Gradle设置阿里云镜像源
Gradle设置
首先找到Gradle的用户目录,默认情况下在 C:\Users\你的用户名\.gradle
如果设置了 GRADLE_HOME 环境变量的话就是你设置的目录
/images/image.png)
找到家目录中的 init.gradle 文件,如果没有就新建一个
在其中添加如下代码
buildscript {
repositories {
maven {
url 'https://maven.aliyun.com/repository/public'
}
maven {
url 'https://maven.aliyun.com/repositories/jcenter'
}
}
}
allprojects {
repositories {
maven {
url 'https://maven.aliyun.com/repository/public'
}
maven {
url 'https://maven.aliyun.com/repositories/jcenter'
}
}
}仓库名
简介
实际地址
使用地址
jcenter
JFrog公司提供的仓库
https://maven.aliyun.com/repository/jcenter
https://maven.aliyun.com/nexus/content/repositories/jcenter
mavenLocal
本台电脑上的仓库
{USER_HOME}/.m2/repository
C:/Users/{USER_NAME}/.m2/repository (Windows)
/home/{USER_NAME}/.m2/repository (Linux)
mavenCentral
Sonatype公司提供的中央库
http://central.maven.org/maven2
https://maven.aliyun.com/repository/central
https://maven.aliyun.com/nexus/content/repositories/central
Google公司提供的仓库
https://maven.aliyun.com/repository/google
https://maven.aliyun.com/nexus/content/repositories/google
https://dl.google.com/dl/android/maven2
jitpack
JitPack提供的仓库
public
jcenter和mavenCentral的聚合仓库
https://maven.aliyun.com/repository/public
https://maven.aliyun.com/nexus/content/groups/public
gradle-plugin
Gradle插件仓库
https://maven.aliyun.com/repository/gradle-plugin
https://maven.aliyun.com/nexus/content/repositories/gradle-plugin
Gradle高版本编译时Lombok不起作用
今天使用lombok时出现问题,maven项目能正常使用,拿到gradle里面就出问题,在网上找了一圈,最终解决
解决办法:引入lombok时需要用如下格式
dependencies {
annotationProcessor 'org.projectlombok:lombok:1.18.20'
compileOnly 'org.projectlombok:lombok:1.18.20'
}错误的格式(少了 annotationProcessor 'org.projectlombok:lombok:1.18.20' )
dependencies {
compileOnly 'org.projectlombok:lombok:1.18.20'
}其他没有生效的方法
打开此选项
