问题来源
今天研究了下如何将gradle的aop插件打包上传到Nexus私服,本来也想使用第三方的maven仓库,但是发现网上的几乎都关服了,那么没办法,只能自己搭建一下Nexus私服了。
搭建Nexus环境
我使用的是CentOS 7.6(64位版本),至少需要4G内存的服务器。那么我们现在开始上干货了。
安装java的环境
yum install java
Nexus下载
wget https://download.sonatype.com/nexus/3/nexus-3.37.1-01-unix.tar.gz

解压缩
tar -zxvf nexus-3.37.1-01-unix.tar.gz
运行Nexus
进入bin目录
cd nexus-3.37.1-01/bin
运行nexus
./nexus start // 后台运行
./nexus run // 前台运行,退出命令行停止
这里你可以先拿run的命令测试一下,有问题可以随时Ctrl+C关掉。
开放服务器端口,配置安全组规则

这里注意选出方向,入方向是指该服务器访问别的服务器开放的端口。在浏览器输入你的服务器的公网IP地址加上8081端口,8081是Nexus的默认端口,如果你不配置,那就是它。

然后复制maven releases地址。

这个地址在Gradle插件项目中会用到。
apply plugin: 'groovy'
apply plugin: 'maven-publish'
repositories {
mavenCentral()
}
dependencies {
implementation gradleApi()//gradle sdk
implementation localGroovy()//groovy sdk
implementation fileTree("libs/aspectjtools-1.9.19.jar")
}
jar {
from {
zipTree(new File(project.projectDir.absolutePath + "/libs/aspectjtools-1.9.19.jar"))
}
}
java {
withJavadocJar()
withSourcesJar()
}
sourceSets {
main {
java {
srcDirs = ["src"]
}
}
}
publishing {
// Components are the standard way of defining a publication.
// They are provided by plugins, usually of the language or platform variety.
// For example, the Java Plugin defines the components.java SoftwareComponent,
// while the War Plugin defines components.web.
publications {
myLibrary(MavenPublication) {
from components.java
groupId "com.dorachat"
version "1.0"
}
}
repositories {
maven {
name = "beta"
// 不使用https
allowInsecureProtocol true
url = uri("http://47.236.19.46:8081/repository/maven-releases/")
credentials {
username = "admin"
password = "填入你的Nexus密码"
}
}
}
}
// 注意⚠️: 插件修改后需要重新发布: ./gradlew clean build publish --info
// 注意jdk的字节码版本和gradle的对应关系
我这里就为了图方便,就不加ssl证书了,这样的话要设置allowInsecureProtocol证书为true,你也可以添加SSL证书,这样就可以以https的方式访问了。然后执行
./gradlew clean build publish --info
这行命令就发布成功了。

Java字节码版本对照
如果你报这个错: General error during conversion: Unsupported class file major version 63,那就是gradle和jdk版本不匹配导致的。
49 = Java 5
50 = Java 6
51 = Java 7
52 = Java 8
53 = Java 9
54 = Java 10
55 = Java 11
56 = Java 12
57 = Java 13
58 = Java 14
59 = Java 15
60 = Java 16
61 = Java 17
62 = Java 18
63 = Java 19
64 = Java 20
| Java ve |
|---|


1140

被折叠的 条评论
为什么被折叠?



