006 jenkins + maven + springboot + git(分支) 项目

1.新建任务

    新建任务 --> 构建一个自由风格的软件项目 --> HelloWorldjava

2.源码管理

    这里以git为例,git

    Repository URL 代码路径: https://github.com/995586041/jenkins.git 这是我本身建的springboot测试项目,须要的能够fork一份,而后填成本身的git路径github

    Credentials 登陆GitHub的用户名和密码,点击后面的 “add” 进行添加spring

    Branch Specifier 须要发布的分支名shell

3.构建

    1.Execute shell : 在Jenkins所在机器进行代码打包

echo $PATH
mvn clean package -DskipTests -U

    2.Send files or execute commands over SSH : 将Jenkins机器打包以后的代码,发送到服务器,并执行相关启动命令

      Remote directory  发送到远程机器的那个目录,若是不存在,会自动新建立该目录springboot

      这里的启动端口我写的是 9999,能够随意改bash

#!/bin/bash
cd HelloWorld
nohup java -jar **/*.jar --server.port=9999 & > helloword.log

 

4.保存并构建

    点击构建后,若是没报错,下面的就不用看了,若是报错 "mvn : command not found",难道是没装maven,打开shell,执行 mvn -v,我靠,这他娘的是好的啊,而后开始怀疑,一点是本身点的姿式不对,再点一次,我擦,仍是不行啊,而后开始上网查,网上一溜烟的说是权限问题,说什么Jenkins发布时使用的是本身建立的Jenkins用户,不是root用户,没有执行命令的权限,感受说的有道理啊,赶忙去改了再发布一次,仍是不行,其实这个真的没毛用。服务器

    我在上面的3.1写了,echo $PATH,日志输出为: /sbin:/usr/sbin/bin/usr/bin 说明Jenkins只去这几个目录下找mvn命令,若是你在 /etc/profile 里配置了maven 可是却没有创建软链接到上面输出的这几个文件夹下,那命令是绝对找不到的。由于过去mvn命令后,Jenkins也会用到java命令,因为上述缘由,java命令一样会报 "java : command not found",知道缘由以后,去解决这个问题就简单了,我试过两种方法:maven

    第一种:修改Jenkins环境变量测试

    系统管理 --> 系统设置 --> 全局属性 --> 环境变量 --> 在Jenkins的PATH中添加java和maven

    键:PATH

    值:$PATH:/opt/jdk/bin:/opt/maven/bin

    第二种: 创建maven和java的软链接

# /opt/jdk/bin/java 实际目录
# /usr/bin/java 软链接目录
ln -s /opt/jdk/bin/java /usr/bin/java
ln -s /opt/maven/bin/mvn /usr/bin/mvn

    这样Jenkins在加载 /sbin:/usr/sbin/bin/usr/bin 下命令时就能找到相关命令

5.再次保存而且构建

    若是你仍是成功的,那就跳过下面,若是连上远程服务器,执行命令时遇到下面的错:java command not found

    

    缘由跟上面的同样 Jenkins 并无在 /sbin:/usr/sbin/bin/usr/bin 找到 java 命令 ,两种解决办法:

    1.java命令给全路径

     java -jar xx.jar  改为  /opt/jdk/bin/java -jar xx.jar

    2.创建软链接

    这里是在充当服务器的机器上创建软链接

ln -s /opt/jdk/bin/java /usr/bin/java

   6.访问

       http://114.67.xxx.xx:9999/hello

       个人项目是 9999 端口,而且只有一个测试接口 /hello

       构建成功后,由于远程服务器上已经起来相关项目,端口已经被占用,由于是测试没作相关处理,若是再次构建,应该会端口冲突,请注意

相关文章
相关标签/搜索