Maven使用GitHub项目目录搭建远程仓库
使用GtiHub的项目目录搭建第三方远程仓库,能免除使用服务器搭建Nexus私服,而且空间也是免费的。但是这种方式只适合小规模发布,毕竟搜索和版本控制是一个问题,如果需要更复杂的功能就只能转向Nexus这样的私服。
搭建步骤如下:
1、配置POM发布到本地目录,配置如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.jsoft</groupId>
<artifactId>testcommon</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>testcommon</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies> <distributionManagement>
<repository>
<id>jsoftlocal-mvn-repo</id>
<url>file:D:/jsoftlocal-mvn-repo/</url>
</repository>
</distributionManagement> </project>
提示:url节点中,Linux目录配置参考:file:/user/home/test/;其实<distributionManagement>节点可以发布到远程,也就是http地址,也可以发布到本地目录,就如上面配置一样。
2、使用deploy插件进行发布,命令行:
mvn deploy
插件官网:http://maven.apache.org/plugins/maven-deploy-plugin/
3、发布好之后的文件如下所示:

目录上使用包的目录一层一层的,最后这些文件全部上传到GitHub目录。
3、上传到GitHub目录,比如我将上面的文件夹上传到我新建的项目目录,如下所示:
https://github.com/easonjim/5_java_example/tree/master/mavenrepository/jsoftlocal-mvn-repo/
当然,也可以直接上传如上目录的全部文件到指定的项目目录即可,重点是上面的文件。
4、获取GitHub的资源路径,比如上面的项目路对应的资源路径就只是域名不同。地址如下:
https://raw.githubusercontent.com/easonjim/5_java_example/master/mavenrepository/jsoftlocal-mvn-repo/
注意:这个目录是GitHub安全机制导致不能浏览,但这一些放在POM上是正常运作的。
也可以通过下载jar包测试是否通,地址如下:
https://raw.githubusercontent.com/easonjim/5_java_example/master/mavenrepository/jsoftlocal-mvn-repo/com/jsoft/testcommon/0.0.1-SNAPSHOT/testcommon-0.0.1-20170617.163808-1.jar
5、配置项目使用上传的JAR包,POM配置如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.jsoft</groupId>
<artifactId>usetestcommon</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>usetestcommon</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <repositories>
<repository>
<id>jsoftlocal-mvn-repo</id>
<url>https://raw.githubusercontent.com/easonjim/5_java_example/master/mavenrepository/jsoftlocal-mvn-repo/</url>
</repository>
</repositories> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.jsoft</groupId>
<artifactId>testcommon</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
先配置远程仓库地址,其中url节点就是第4步所获得的地址;JAR包的依赖按平时引入即可。
提示:远程仓库节点中的url可以配置http地址,也可以配置本地局域网地址,还可以配置本地目录地址,只要这个目录包含了第3步中所示的JAR包的依赖文件即可。本地目录地址参考:file:D:/jsoftlocal-mvn-repo/,注意前缀file。
测试工程:https://github.com/easonjim/5_java_example/tree/master/mavenrepository
参考:
http://www.importnew.com/22992.html
Maven使用GitHub项目目录搭建远程仓库的更多相关文章
- Android基础新手教程——1.5.2 Git之使用GitHub搭建远程仓库
Android基础新手教程--1.5.2 Git之使用GitHub搭建远程仓库 标签(空格分隔): Android基础新手教程 本节引言: 在上一节中.我们学习了怎样使用Git.构建我们的本地仓库.轻 ...
- git本地项目连接私人远程仓库以及遇到的问题
一.引言 1.最开始的时候,我本地项目连接的是github远程仓库,现在要转到公司的私人远程仓库. 2.我和大家说两个事: (1)本地项目连接github远程仓库, (2)本地项目连接私人远程仓库, ...
- 【开发工具 - Git】之本地项目托管到远程仓库
这里所说的“本地项目托管到远程仓库”,说的是:例如,我们在本地有一个写了很长时间的项目,现在想要托管到GitHub或码云上进行版本控制. 这个过程大致需要以下几个步骤: (1)在本地初始化Git项目本 ...
- git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...
- Eclipse4.4设备egit插件提交本地项目代码到远程仓库
一.设备egit 打开Eclipse的Marketplace.在搜索框中输入egit就可以,能够看到Eclipse4.4已经默认安装了egit,当然假设有新版本号的egit公布的话,也能够在下图上点击 ...
- Git——如何将本地项目提交至远程仓库
参考文章:http://blog.csdn.net/dadaxiongdebaobao/article/details/52081826 git 将一个本地文件目录提交到远程仓库的步骤 参考文章: ...
- 使用Git与Github创建自己的远程仓库
原因 早就想创建一个自己的远程仓库,方便发布到Nuget上,自己用也好,项目组用也好,都方便. 今天抽了个时间建了个仓库,随便记下溜方便后来的人. 流程 1,创建自己的GitHub仓库 首先需要到 G ...
- Git——如何将本地项目提交至远程仓库(第一次)
1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库. git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数 ...
- Eclipse Maven 配置setting.xml 的镜像远程仓库
1.在.m2中新建settings.xml文件 1.window-->Preferences-->Maven-->User Settings 3.点击open file 编辑将远程仓 ...
随机推荐
- Android 性能优化(3)性能工具之「调试 GPU 过度绘制」Debug GPU Overdraw Walkthrough-查看哪些view过度绘制了
Debug GPU Overdraw Walkthrough 1.In this document Prerequisites Visualizing Overdraw You should also ...
- Roslyn导致发布网站时报错:编译失败
最近新升级了Visual Studio 2017,创建的Web项目Bin目录中多了一个叫roslyn的文件夹,该文件夹导致网站在某些服务器上发布出错 从网上搜索了一下,Roslyn是新出的动态编译工具 ...
- C语言指针的理解以及指针的指针的理解
指针指向的是内存地址编号,内存地址编号指向的是对应的内容. 我们需要一个变量,来储存内存地址编号,这个变量的值是一个内存地址编号,但是我们可以通过修改变量的值,来不断的改变内存地址编号. 但是,我们如 ...
- 读《实战GUI产品的自动化测试》:第一步——了解自动化测试,简单RFT的录制回放实例
1.了解自动化测试,什么是自动化测试?(可以参数百度百科“自动化测试”) 2.了解自动化测试 * 自动化测试如何改善产品的质量 * 自动化测试无法完全替代手工测试 * 自动化测试无法发现新的问题——适 ...
- nodejs——避免判断创建多级目录
基本概念 fs.exists已经弃用,可以使用fs.access判断文件夹是否存在,但是官方的建议是在进行文件操作前不要使用fs.access,官方推荐的方式的是直接进行文件操作,有错误再修改 不建议 ...
- 【译】x86程序员手册25-7.1任务状态段
7.1 Task State Segment 任务状态段 All the information the processor needs in order to manage a task is st ...
- 预测学习、深度生成式模型、DcGAN、应用案例、相关paper
我对GAN"生成对抗网络"(Generative Adversarial Networks)的看法: 前几天在公开课听了新加坡国立大学[机器学习与视觉实验室]负责人冯佳时博士在[硬 ...
- Context Switches msdn
Context Switches https://msdn.microsoft.com/en-us/library/ms682105(VS.85).aspx The scheduler mainta ...
- Jenkins系列之Jenkins的安装(一)
自动化测试的时候通常我们都会进行持续集成,下面是持续集成工具Jenkins的安装 Jenkins优点: 开源免费 跨平台,支持所有的平台 web形式的可视化的管理页面 安装配置超级简单 tips及时快 ...
- (七)python3 切片
切片:取一个 list 或 tuple 的部分元素是非常常见的操作 >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] #笨办法 ...