当前位置:   article > 正文

Maven 私服Nexus的搭建教程windows(搭配android maven插件使用)_nexus安装win启动服务

nexus安装win启动服务

Nexus

        是 Sonatype 公司发布的一款仓库(Repository)管理软件,常用来搭建 Maven 私服,所以也有人将 Nexus 称为“Maven仓库管理器”。

 Maven 仓库管理器,主要有以下 3 种:

  • Apache Archiva
  • JFrog Artifactory
  • Sonatype Nexus

Nexus 开源版具有以下特性:

  • 占用内存小(28 M 左右)
  • 具有基于 ExtJs 得操作界面,用户体验较好
  • 使用基于 Restlet 的完全 REST API
  • 支持代理仓库、宿主仓库和仓库组
  • 基于文件系统,不需要依赖数据库
  • 支持仓库索引以及搜索
  • 支持在界面上上传构件
  • 安全控制

下载与安装:2.0版本

下载官网地址:Download 

或者直接下载地址:nexus.zip

注解:如果遇到下载失败,最好用下载工具进行下载,目前我在下载过程中遇到了下载超时,用迅雷下载完美解决此问题。

解压以后得到:

  • nexus-:该目录中包含了 Nexus 2.x 运行所需要的文件,如启动脚本、依赖 jar 包等。
  • sonatype-work:该目录中包含了 Nexus 2.x 生成的配置文件、日志文件等。

如何启动:

.进入 \nexus\bin\jsw 文件夹,根须操作系统版本选择合适的目录,由于我的操作系统是 Windows 10 64 位,所以选择 windows-x86-64 目录

 其中:

  • console-nexus.bat:启动 Nexus 并在 DOS 命令行中展示启动过程。
  • install-nexus.bat:将 Nexus 安装为 Windows 服务,开机自动启动。
  • start-nexus.bat:启动 Nexus。
  • stops-nexus.bat:停止 Nexus。
  • uninstall-nexus.bat:与 install-nexus.bat 相对应,负责卸载 Nexus 服务。

如果第一次安装,双击运行 install-nexus.bat 安装 Nexus 服务,然后再运行 start-nexus.bat 启动服务。

注意:

  • 运行 install-nexus.bat 安装服务,若提示”wrapper  | OpenSCManager failed - 拒绝访问。 (0x5)“,只要关闭窗口,以管理员身份运行即可解决。
  • 运行 start-nexus.bat 启动服务,若提示”wrapper  | OpenSCManager failed - 拒绝访问。 (0x5)“,只要关闭窗口,以管理员身份运行即可解决。

访问:

访问 http://localhost:8081/nexus

默认的账号和密码:admin 和 admin123

 登录成功:

Nexus仓库配置:

在仓库列表中,每个仓库都具有一系列属性:

  • Type:仓库的类型,Nexus 中有 4 中仓库类型:group(仓库组)、hosted(宿主仓库)、proxy(代理仓库)以及 virtual(虚拟仓库)。
  • Format:仓库的格式。
  • Policy:仓库的策略,表示该仓库是发布(Release)版本仓库还是快照(Snapshot)版本仓库。
  • Repository Status:仓库的状态。
  • Repository Path:仓库的路径。

这里面我们正常使用hosted宿主仓储即可。

Releases:正式版本

Snapshots:测试版本,如果是测试版本,在push 本地aar的时候,需要在版本最后加"-Snapshots"

我们一般包上传到hosted类型,默认已够我们使用。

Repository Path:仓库地址,如果我们在maven需要使用,上传和下载,的地址就是这个。直接copy到AndroidStudio或者maven xml文件中配置即可。

​​​​​​​

 

Android build Maven push打包上传:

1.Android部分如果不熟悉如何打包上传,可以参考Android Maven build教程

 2.针对部分Maven上传失败,或者上传不到 Nexus服务的解决方案,可以修改maven task方法。

maven_push.gradle文件如下:

  1. apply plugin: 'maven'
  2. afterEvaluate { project ->
  3. uploadArchives {
  4. repositories {
  5. mavenDeployer {
  6. pom.groupId = GROUP_ID
  7. pom.artifactId = ARTIFACT_ID
  8. pom.version = VERSION
  9. repository(url: RELEASE_URL) {
  10. authentication(userName: USER_NAME, password: PASSWORD)
  11. }
  12. }
  13. }
  14. }
  15. task androidJavadocs(type: Javadoc) {
  16. source = android.sourceSets.main.java.srcDirs
  17. classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
  18. }
  19. task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
  20. classifier = 'javadoc'
  21. from androidJavadocs.destinationDir
  22. }
  23. task androidSourcesJar(type: Jar) {
  24. classifier = 'sources'
  25. from android.sourceSets.main.java.sourceFiles
  26. }
  27. artifacts {
  28. archives androidSourcesJar
  29. archives androidJavadocsJar
  30. }
  31. }

 最后执行上传结果如下:

 这是上传成功,我们就可以在Nexus仓库找到该包,release的包由于上传不支持覆盖版本号,所以每次上传都需要更新版本号,否则报错。

Android如何下载包:

1.在项目最外层build文件中,新增对Nexus maven库的支持

maven {
    url 'http://192.168.1.100:8081/nexus/content/repositories/releases/'
}

2.直接引用包

implementation "com.android.mobile.woniu:woniuFrame:2022.9.1.01"

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/124628
推荐阅读
相关标签
  

闽ICP备14008679号