centeros7 安装配置环境jdk1.8的教程
这篇文章主要介绍了centeros7 安装配置环境jdk1.8的教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
1.先卸载centeros自带jdk
1 | rpm-qa|grepopenjdk |
查询出来的自带的openjdk
2.删除
1 | rpm-e--nodeps |
3.再次查询
1 | rpm-qa|grepjdk |
4.在usr/local创建文件夹
1 2 | cd/usr/local mkdirjava |
5.将jdk1.8放到刚刚创建的文件中
1 | cd/usr/local/java |
用xftp上传后解压
1 | tar-zxvfjdk-8u181-linux-x64.tar.gz |
6.进入刚刚解压的文件夹
1 | cdjdk1.8.0_181/pwd#(这一步记录jdk1.8的路径,一会配置环境用) |
7.配置环境
1 | vim/etc/profile |
按i插入下面路径
1 | exportJAVA_HOME=/usr/local/java/jdk1.8.0_181exportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexportPATH=$PATH:$JAVA_HOME/bin |
按Esc后:wq退出后
1 | source/etc/profile |
8.查看是否成功
1 | java-version |
maven 环境配置
1.在/usr/local 下创建maven文件夹
1 | cd/usr/localmkdirmaven |
2.进去新建的文件夹
cdmaven
上传 apache-maven-3.5.4-bin.zip
3.解压
1 | unzipapache -maven -3.5.4 -bin .zip |
4.进入解压的文件夹
1 | cdapache-maven-3.5.4/pwd#(记录下这个路径,一会配置环境用到) |
5.配置环境
1 | vim/etc/profile |
按i插入下面
1 | exportMAVEN_HOME=/usr/local/maven/apache-maven-3.5.4exportPATH=$PATH:$MAVEN_HOME/bin |
按Esc后:wq保存后
1 | source/etc/profile |
6.查看是否成功
mvn-v
centeros7安装git
1 | yuminstallgit |
一路下来y即可
查看是否是成功
1 | git--version |
查看git命令地址
1 | which-agit |
到此环境已经搭建好,开始对maven私服,gitlab搭建。
gitlab搭建
1.新建 /etc/yum.repos.d/gitlab-ce.repo
1 | vim/etc/yum.repos.d/gitlab-ce.repo |
后按下 i 键 插入下面内容
1 | [gitlab-ce]name=GitlabCERepositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/gpgcheck=0enabled=1 |
2.
1 | sudoyummakecachesudoyuminstallgitlab-ce#(安装最新的)或sudoyuminstallgitlab-ce-12.0.4#(指定版本号) |
3.配置 external_url
1 | vim/etc/gitlab/gitlab.rb |
修改external_url地址 为:http://本机地址:端口号/
本机地址查看:ifconfig
查看端口号运行的应用 lsof -i:端口号
4.
1 | gitlab-ctlreconfigure |
5.
1 | gitlab-ctlrestart#启动gitlab-ctlstart|stop|status|restart#其他操作 |
6.访问
1 | http://本机地址:端口号/ |
常见问题gitlab502
: 这个是端口被占用
确保端口不被占用后从4开始继续来一遍
centeros7 搭建maven私服
下载nexus3.x:
https://www.sonatype.com/download-oss-sonatype
1.在/usr/local下创建nexus文件
1 | cd/usr/localmkdirnexuscdnexus |
2.上传刚刚下载的nexus压缩包并解压
1 | tar-zxvfnexus-3.18.1-01-unix.tar.gz |
3.
1 | cdnexus-3.18.1-01/bin/ls |
4.启动
1 | ./nexusrun& |
5.开启远程访问端口
1 | firewall-cmd--zone=public--add-port=8081/tcp--permanentfirewall-cmd--reload |
浏览器访问
6.设置开机自启动
1.创建服务
1 | vim/usr/lib/systemd/system/nexus.service |
2.按i将下面复制进去
1 | [Unit]Description=nexusservice[Service]Type=forkingLimitNOFILE=65536#警告处理ExecStart=/usr/local/nexus/nexus-3.7.1-02/bin/nexusstartExecReload=/usr/local/nexus/nexus-3.7.1-02/bin/nexusrestartExecStop=/usr/local/nexus/nexus-3.7.1-02/bin/nexusstopRestart=on-failure[Install]WantedBy=multi-user.target |
3.将服务加入开机启动
1 | systemctlenablenexus.service |
4.重新加载配置文件
1 | systemctldaemon-reload |
7.运行用户为root (编辑nexus bin下的nexus.rc)
1 | cd/usr/local/nexus/nexus-3.18.1-01/bin/vimnexus.rc |
内容改为:
1 | run_as_user="root" |
8.修改nexus3启动时要使用的jdk版本
1 | cd/usr/local/nexus/nexus-3.18.1-01/bin/vimnexus |
按i将下面添加进去
1 | INSTALL4J_JAVA_HOME_OVERRIDE=/usr/local/java/jdk1.8.0_181 |
java_home地址可以用echo $JAVA_HOME 输出 (前提是/etc/profile有export)
9.修改nexus3默认端口
文件在nexus-xx
1 | etc/nexus-default.properties |
这里已经搭建好了,下面是deploy到私服和从私服上下载下来测试
1.创建facade 上传到私服
在/usr下创建projects
1 | cd/usrmkdirprojects |
将改zip解压到projects进入到pom.xml所在目录
1 | mvndeploy-Dmaven.test.skip=true-U |
已经上传成功
这里要把Allow anonymous users to access the server(允许匿名用户访问服务器)
因为本地maven没有配置用户
也可以用idea maven命令depoly
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | <?xml version="1.0" encoding="UTF-8"?> <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.netease</groupId> <artifactId>maven_test_demo</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>jar</packaging> <!-- 定义常量 --> <properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven-compiler-plugin.version>3.6.1</maven-compiler-plugin.version> <nexus.host>192.168.20.143:8081</nexus.host> </properties> <!-- 定义deploy私服地址及id (这里的id 应该和maven conf中settings中server标签中的一致)--> <distributionManagement> <repository> <id>nexus-releases</id> <name>Nexus Private Release Repository</name> <url>http://${nexus.host}/repository/maven-releases</url> </repository> <snapshotRepository> <id>nexus-snapshots</id> <name>Nexus Private Snapshot Repository</name> <url>http://${nexus.host}/repository/maven-snapshots</url> </snapshotRepository> </distributionManagement> <!-- 定义编译: https://blog.csdn.net/jiachunchun/article/details/90235498 --> <build> <finalName>${project.artifactId}-${project.version}</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven-compiler-plugin.version}</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <encoding>${project.build.sourceEncoding}</encoding> </configuration> </plugin> </plugins> </build> </project> |
settings.xml中servers中定义的id一致
在settings 添加下面镜像
1 | <mirror><id>Central</id><url>http://repo1.maven.org/maven2</url><mirrorOf>central</mirrorOf></mirror> |
最后settings文件。到这儿jar包已经可以发布到私服上去了
再看怎么拉取的
maven_demo_impl项目的pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | <?xml version="1.0" encoding="UTF-8"?> <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.netease</groupId> <artifactId>maven_demo_impl</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!-- 定义常量 --> <properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven-compiler-plugin.version>3.6.1</maven-compiler-plugin.version> <nexus.host>192.168.20.143:8081</nexus.host> <spring-cloud.version>Finchley.SR1</spring-cloud.version> </properties> <!-- 定义仓库地址 --> <repositories> <repository> <id>nexus-aliyun-repo</id> <name>nexus aliyun repo</name> </repository> <!-- 私服 --> <repository> <id>maven-public</id> <name>maven public</name> </repository> </repositories> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <!-- 依赖 --> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> <dependency> <groupId>com.netease</groupId> <artifactId>maven_test_demo</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project> |
配置完成后就会自动去私服下载jar了
jenkins搭建
1.查看环境版本
1 | java-version#没有的话查看上文jdk1.8安装mvn-v#没有的话查看上文maven安装git--version#没有的话查看上文git安装 |
2.安装jenkenis
添加Jenkins源:
1 | sudowget-O/etc/yum.repos.d/jenkins.repohttp://jenkins-ci.org/redhat/jenkins.reposudorpm--importhttp://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key |
3.安装
1 | yuminstalljenkins |
4.启动
1 | sudoservicejenkinsstart |
5.访问
1 | http://ip:8080/#jenkenis默认是8080 |
第一次密码:
vim /var/lib/jenkins/secrets/initialAdminPassword
点安装推荐的插件(后面的选择安装不知道安装什么)
修改jenkins端口
1 | vim/etc/sysconfig/jenkins |
将JENKINS_PORT="8080" ===> 修改成未占用想修改的端口 JENKINS_PORT="8089"
重启服务
1 | servicejenkinsrestart |
遇到的问题:重装了JDK, java地址变了
启动jenkins报错: Job for jenkins.service failed because the control process exited with error code. See "systemctl status jenkins.service" and "journalctl -xe" for details.
按提示输入systemctl status jenkins.service
解决方法:
1> 查看当前Java的环境变量
1 | echo$JAVA_HOME |
2> 复制Java的环境变量地址, 编辑/etc/init.d/jenkins文件, 指定位置添加该地址, 后缀附上/bin/java
1 | vim / etc / init.d / jenkins |
重点是配置Jenkins:
1.配置全局jdk maven git
点Manage Jenkins(系统管理) --> Global Tool Configuaration(全局工具配置)
1.maven配置:配置settings.xml地址
2.配置jdk地址 (可以用echo $JAVA_HOME
获取)
3.git配置地址 可以用(which -a git查看)
4.maven配置地址
2.新建任务
3.配置任务
1.配置源码管理 下面version是gitlab的版本号
Repository URL:访问的仓库名称 Credentials:访问账目密码或者ssh证书 Branch Specifier (blank for ‘any'):访问的分支,可以多个源码库浏览器:选择源码库服务器 URL:源码仓库url Version:源码库服务器版本号
2.配置构建
1 | cleancompilepackageinstalldeploy - Dmaven.test.skip = true - U #将jar发布 |
然后应用,配置完成!
3.在my view(我的视图) -> 找到新建的项目 --> 点击build now(立即构建)
在构建历史中点击刚刚的构建如下图: #1 : 是构建的id ,控制台输出: 可以看到具体的输出
下面是输入日志 可以看到以前拉取到指定的项目master分支
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | Started by user root Running as SYSTEM Building in workspace / var / lib / jenkins / workspace / first using credential fad2813a - c894 - 4386 - ae16 - 11d6e6d349d4 Cloning the remote Git repository Cloning repository http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git > / usr / local / git / bin / git init / var / lib / jenkins / workspace / first # timeout=10 Fetching upstream changes from http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git > / usr / local / git / bin / git - - version # timeout=10 using GIT_ASKPASS to set credentials > / usr / local / git / bin / git fetch - - tags - - progress http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git + refs / heads / * :refs / remotes / origin / * > / usr / local / git / bin / git config remote.origin.url http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git # timeout=10 > / usr / local / git / bin / git config - - add remote.origin.fetch + refs / heads / * :refs / remotes / origin / * # timeout=10 > / usr / local / git / bin / git config remote.origin.url http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git # timeout=10 Fetching upstream changes from http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git using GIT_ASKPASS to set credentials > / usr / local / git / bin / git fetch - - tags - - progress http: / / 192.168 . 20.137 : 9029 / root / wx - ssm.git + refs / heads / * :refs / remotes / origin / * > / usr / local / git / bin / git rev - parse refs / remotes / origin / master^{commit} # timeout=10 > / usr / local / git / bin / git rev - parse refs / remotes / origin / origin / master^{commit} # timeout=10 Checking out Revision 47d13c3ca0bc12fc0465c3e4c582b2c542276eb6 (refs / remotes / origin / master) > / usr / local / git / bin / git config core.sparsecheckout # timeout=10 > / usr / local / git / bin / git checkout - f 47d13c3ca0bc12fc0465c3e4c582b2c542276eb6 Commit message: "更新 pom.xml" First time build. Skipping changelog. [first] $ / project / java / maven / apache - maven - 3.6 . 1 / bin / mvn - s / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml - gs / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml clean package [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building the effective model for com.guojin:gjmetal - wx - ssm:jar: 1.0 . 0.1 - SNAPSHOT [WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: org.apache.httpcomponents:httpclient:jar - > version (?) vs 4.5 . 6 @ line 155 , column 21 [WARNING] [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build. [WARNING] [WARNING] For this reason, future Maven versions might no longer support building such malformed projects. [WARNING] [INFO] [INFO] - - - - - - - - - - - - - - - - - - - - - < com.guojin:gjmetal - wx - ssm > - - - - - - - - - - - - - - - - - - - - - - [INFO] Building gjmetal - wx - ssm 1.0 . 0.1 - SNAPSHOT [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ jar ] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] [INFO] - - - maven - clean - plugin: 2.5 :clean (default - clean) @ gjmetal - wx - ssm - - - [INFO] [INFO] - - - jacoco - maven - plugin: 0.7 . 9 :prepare - agent (pre - test) @ gjmetal - wx - ssm - - - [INFO] argLine set to - javaagent: / var / lib / jenkins / .m2 / repository / org / jacoco / org.jacoco.agent / 0.7 . 9 / org.jacoco.agent - 0.7 . 9 - runtime.jar = destfile = / var / lib / jenkins / workspace / first / target / jacoco. exec ,includes = com.gjmetal. * [INFO] [INFO] - - - maven - resources - plugin: 2.6 :resources (default - resources) @ gjmetal - wx - ssm - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ gjmetal - wx - ssm - - - [INFO] Changes detected - recompiling the module! [INFO] Compiling 27 source files to / var / lib / jenkins / workspace / first / target / classes [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ERROR] COMPILATION ERROR : [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ERROR] / var / lib / jenkins / workspace / first / src / main / java / com / gjmetal / Swagger2.java:[ 4 , 40 ] 程序包org.fuelteam.springboot.swagger2不存在 [ERROR] / var / lib / jenkins / workspace / first / src / main / java / com / gjmetal / Swagger2.java:[ 21 , 2 ] 找不到符号 符号: 类 EnableSwagger2 [INFO] 2 errors [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] BUILD FAILURE [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] Total time: 9.183 s [INFO] Finished at: 2019 - 08 - 23T17 : 05 : 09 + 08 : 00 [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ERROR] Failed to execute goal org.apache.maven.plugins:maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) on project gjmetal - wx - ssm: Compilation failure: Compilation failure: [ERROR] / var / lib / jenkins / workspace / first / src / main / java / com / gjmetal / Swagger2.java:[ 4 , 40 ] 程序包org.fuelteam.springboot.swagger2不存在 [ERROR] / var / lib / jenkins / workspace / first / src / main / java / com / gjmetal / Swagger2.java:[ 21 , 2 ] 找不到符号 [ERROR] 符号: 类 EnableSwagger2 [ERROR] - > [ Help 1 ] [ERROR] [ERROR] To see the full stack trace of the errors, re - run Maven with the - e switch. [ERROR] Re - run Maven using the - X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [ Help 1 ] http: / / cwiki.apache.org / confluence / display / MAVEN / MojoFailureException Build step 'Invoke top-level Maven targets' marked build as failure Finished: FAILURE |
上面报错是项目问题,可以看到已经拉取到项目了。所以要保证项目的正确性。
下面是正确的两个项目运行实例在搭建好gitlab nexus jenkins后实现自动发jar到私服及启动jar项目
背景: gitlab nexus jenkins都已经完成了
1.从gitlab下载项目后发布jar到私服
重新配置gitlab地址:
配置maven命令:
1 | cleancompilepackageinstalldeploy - Dmaven.test.skip = true - U |
点击build now 然后看控制台输出如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | Started by user root Running as SYSTEM Building in workspace / var / lib / jenkins / workspace / maven_home using credential fad2813a - c894 - 4386 - ae16 - 11d6e6d349d4 > / usr / local / git / bin / git rev - parse - - is - inside - work - tree # timeout=10 Fetching changes from the remote Git repository > / usr / local / git / bin / git config remote.origin.url http: / / 192.168 . 20.143 : 8083 / root / maven_demo.git # timeout=10 Fetching upstream changes from http: / / 192.168 . 20.143 : 8083 / root / maven_demo.git > / usr / local / git / bin / git - - version # timeout=10 using GIT_ASKPASS to set credentials > / usr / local / git / bin / git fetch - - tags - - progress http: / / 192.168 . 20.143 : 8083 / root / maven_demo.git + refs / heads / * :refs / remotes / origin / * > / usr / local / git / bin / git rev - parse refs / remotes / origin / master^{commit} # timeout=10 > / usr / local / git / bin / git rev - parse refs / remotes / origin / origin / master^{commit} # timeout=10 Checking out Revision a26adc740d331eabe5b0fb2a46b372dbf6673d2c (refs / remotes / origin / master) > / usr / local / git / bin / git config core.sparsecheckout # timeout=10 > / usr / local / git / bin / git checkout - f a26adc740d331eabe5b0fb2a46b372dbf6673d2c Commit message: "Update pom.xml" > / usr / local / git / bin / git rev - list - - no - walk a26adc740d331eabe5b0fb2a46b372dbf6673d2c # timeout=10 [maven_home] $ / project / java / maven / apache - maven - 3.6 . 1 / bin / mvn - s / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml - gs / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml clean compile package install deploy - Dmaven.test.skip = true - U [INFO] Scanning for projects... [INFO] [INFO] - - - - - - - - - - - - - - - - - - - - < com.netease:maven_test_demo > - - - - - - - - - - - - - - - - - - - - - [INFO] Building maven_test_demo 1.0 . 0 - SNAPSHOT [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ jar ] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] [INFO] - - - maven - clean - plugin: 2.5 :clean (default - clean) @ maven_test_demo - - - [INFO] Deleting / var / lib / jenkins / workspace / maven_home / target [INFO] [INFO] - - - maven - resources - plugin: 2.6 :resources (default - resources) @ maven_test_demo - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory / var / lib / jenkins / workspace / maven_home / src / main / resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_test_demo - - - [INFO] Changes detected - recompiling the module! [INFO] Compiling 1 source file to / var / lib / jenkins / workspace / maven_home / target / classes [INFO] [INFO] - - - maven - resources - plugin: 2.6 :resources (default - resources) @ maven_test_demo - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory / var / lib / jenkins / workspace / maven_home / src / main / resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_test_demo - - - [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] - - - maven - resources - plugin: 2.6 :testResources (default - testResources) @ maven_test_demo - - - [INFO] Not copying test resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 :testCompile (default - testCompile) @ maven_test_demo - - - [INFO] Not compiling test sources [INFO] [INFO] - - - maven - surefire - plugin: 2.12 . 4 :test (default - test) @ maven_test_demo - - - [INFO] Tests are skipped. [INFO] [INFO] - - - maven - jar - plugin: 2.4 :jar (default - jar) @ maven_test_demo - - - [INFO] Building jar: / var / lib / jenkins / workspace / maven_home / target / maven_test_demo - 1.0 . 0 - SNAPSHOT.jar [INFO] [INFO] - - - maven - resources - plugin: 2.6 :resources (default - resources) @ maven_test_demo - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory / var / lib / jenkins / workspace / maven_home / src / main / resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_test_demo - - - [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] - - - maven - resources - plugin: 2.6 :testResources (default - testResources) @ maven_test_demo - - - [INFO] Not copying test resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 :testCompile (default - testCompile) @ maven_test_demo - - - [INFO] Not compiling test sources [INFO] [INFO] - - - maven - surefire - plugin: 2.12 . 4 :test (default - test) @ maven_test_demo - - - [INFO] Tests are skipped. [INFO] [INFO] - - - maven - jar - plugin: 2.4 :jar (default - jar) @ maven_test_demo - - - [INFO] [INFO] - - - maven - install - plugin: 2.4 :install (default - install) @ maven_test_demo - - - [INFO] Installing / var / lib / jenkins / workspace / maven_home / target / maven_test_demo - 1.0 . 0 - SNAPSHOT.jar to / var / lib / jenkins / .m2 / repository / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - SNAPSHOT.jar [INFO] Installing / var / lib / jenkins / workspace / maven_home / pom.xml to / var / lib / jenkins / .m2 / repository / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - SNAPSHOT.pom [INFO] [INFO] - - - maven - resources - plugin: 2.6 :resources (default - resources) @ maven_test_demo - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory / var / lib / jenkins / workspace / maven_home / src / main / resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_test_demo - - - [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] - - - maven - resources - plugin: 2.6 :testResources (default - testResources) @ maven_test_demo - - - [INFO] Not copying test resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 :testCompile (default - testCompile) @ maven_test_demo - - - [INFO] Not compiling test sources [INFO] [INFO] - - - maven - surefire - plugin: 2.12 . 4 :test (default - test) @ maven_test_demo - - - [INFO] Tests are skipped. [INFO] [INFO] - - - maven - jar - plugin: 2.4 :jar (default - jar) @ maven_test_demo - - - [INFO] [INFO] - - - maven - install - plugin: 2.4 :install (default - install) @ maven_test_demo - - - [INFO] Installing / var / lib / jenkins / workspace / maven_home / target / maven_test_demo - 1.0 . 0 - SNAPSHOT.jar to / var / lib / jenkins / .m2 / repository / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - SNAPSHOT.jar [INFO] Installing / var / lib / jenkins / workspace / maven_home / pom.xml to / var / lib / jenkins / .m2 / repository / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - SNAPSHOT.pom [INFO] [INFO] - - - maven - deploy - plugin: 2.7 :deploy (default - deploy) @ maven_test_demo - - - Downloading from nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml Progress ( 1 ): 776 B Downloaded from nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml ( 776 B at 6.5 kB / s) Uploading to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.jar Progress ( 1 ): 2.6 kB Uploaded to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.jar ( 2.6 kB at 13 kB / s) Uploading to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.pom Progress ( 1 ): 2.1 kB Uploaded to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.pom ( 2.1 kB at 19 kB / s) Downloading from nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / maven - metadata.xml Progress ( 1 ): 286 B Downloaded from nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / maven - metadata.xml ( 286 B at 11 kB / s) Uploading to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml Progress ( 1 ): 776 B Uploaded to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml ( 776 B at 4.6 kB / s) Uploading to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / maven - metadata.xml Progress ( 1 ): 286 B Uploaded to nexus - snapshots: http: / / 192.168 . 20.143 : 8081 / repository / maven - snapshots / com / netease / maven_test_demo / maven - metadata.xml ( 286 B at 2.5 kB / s) [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] BUILD SUCCESS [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] Total time: 3.640 s [INFO] Finished at: 2019 - 08 - 27T14 : 24 : 47 + 08 : 00 [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Finished: SUCCESS |
2.将运行的jar发布到指定的机器
确保jenkins安装了Publish Over SSH插件 Manage Jenkins -> Manage Plugins -> 搜索ssh
然后配置ssh
配置后点击Test Configuration 出现success
配置完成后新建Item(项目)只是多加了一个构建后(注意前面的配置要想要的改 :项目的git地址
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #最后一个执行的脚本放到的位置是/projects/scripts mkdir scripts vim run.sh #按i将下面内容复制进去 Project_name = $ 1 Port_no = $ 2 #echo $Project_name #echo $Port_no . / etc / profile # 进入到项目 cd / projects / $Project_name # 找到原进程,kill pid = $(ps - ef | grep java| grep $Project_name|awk - F '[ ]+' '{print $2}' ) kill - 9 $pid #启动jar nohup java - jar $Project_name - 1.0 - SNAPSHOT.jar - - server.port = $Port_no - server - Xmx1000m - Xms1000m - Xmn700m - XX: + UseParallelGC & echo "starting service..." sleep 20 #根据重启后是否有当前应用判断启动是否成功 pid = $(ps - ef | grep java| grep $Project_name|awk - F '[ ]+' '{print $2}' ) #echo $pid if [ - z $pid ];then echo "启动失败" exit 1 else echo $Project_name : $pid "SUCCESS" fi |
现在立即构建 查看控制台输出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | Started by user root Running as SYSTEM Building in workspace / var / lib / jenkins / workspace / maven_demo_impl using credential fad2813a - c894 - 4386 - ae16 - 11d6e6d349d4 > / usr / local / git / bin / git rev - parse - - is - inside - work - tree # timeout=10 Fetching changes from the remote Git repository > / usr / local / git / bin / git config remote.origin.url http: / / 192.168 . 20.143 : 8083 / root / maven_demo_impl.git # timeout=10 Fetching upstream changes from http: / / 192.168 . 20.143 : 8083 / root / maven_demo_impl.git > / usr / local / git / bin / git - - version # timeout=10 using GIT_ASKPASS to set credentials > / usr / local / git / bin / git fetch - - tags - - progress http: / / 192.168 . 20.143 : 8083 / root / maven_demo_impl.git + refs / heads / * :refs / remotes / origin / * Seen branch in repository origin / master Seen 1 remote branch > / usr / local / git / bin / git show - ref - - tags - d # timeout=10 Checking out Revision bf0f9bd981c053359167a0e46e517f4f936c8c98 (origin / master) > / usr / local / git / bin / git config core.sparsecheckout # timeout=10 > / usr / local / git / bin / git checkout - f bf0f9bd981c053359167a0e46e517f4f936c8c98 Commit message: "Update TestDemoImpl.java" > / usr / local / git / bin / git rev - list - - no - walk bf0f9bd981c053359167a0e46e517f4f936c8c98 # timeout=10 [maven_demo_impl] $ / project / java / maven / apache - maven - 3.6 . 1 / bin / mvn - s / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml - gs / project / java / maven / apache - maven - 3.6 . 1 / conf / settings.xml clean compile package - Dmaven.test.skip = true - U [INFO] Scanning for projects... [INFO] [INFO] - - - - - - - - - - - - - - - - - - - - < com.netease:maven_demo_impl > - - - - - - - - - - - - - - - - - - - - - [INFO] Building maven_demo_impl 1.0 - SNAPSHOT [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ jar ] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Downloading from nexus - aliyun - repo: http: / / maven.aliyun.com / nexus / content / groups / public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml Downloading from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml Progress ( 1 ): 776 B Downloaded from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven - metadata.xml ( 776 B at 4.2 kB / s) Downloading from nexus - aliyun - repo: http: / / maven.aliyun.com / nexus / content / groups / public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.pom Downloading from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.pom Progress ( 1 ): 2.1 kB Downloaded from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.pom ( 2.1 kB at 47 kB / s) Downloading from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.jar Progress ( 1 ): 2.6 kB Downloaded from maven - public: http: / / 192.168 . 20.143 : 8081 / repository / maven - public / com / netease / maven_test_demo / 1.0 . 0 - SNAPSHOT / maven_test_demo - 1.0 . 0 - 20190827.062446 - 3.jar ( 2.6 kB at 67 kB / s) [INFO] [INFO] - - - maven - clean - plugin: 3.0 . 0 :clean (default - clean) @ maven_demo_impl - - - [INFO] Deleting / var / lib / jenkins / workspace / maven_demo_impl / target [INFO] [INFO] - - - maven - resources - plugin: 3.0 . 2 :resources (default - resources) @ maven_demo_impl - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] Copying 0 resource [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_demo_impl - - - [INFO] Changes detected - recompiling the module! [INFO] Compiling 2 source files to / var / lib / jenkins / workspace / maven_demo_impl / target / classes [INFO] [INFO] - - - maven - resources - plugin: 3.0 . 2 :resources (default - resources) @ maven_demo_impl - - - [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] Copying 0 resource [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 : compile (default - compile ) @ maven_demo_impl - - - [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] - - - maven - resources - plugin: 3.0 . 2 :testResources (default - testResources) @ maven_demo_impl - - - [INFO] Not copying test resources [INFO] [INFO] - - - maven - compiler - plugin: 3.6 . 1 :testCompile (default - testCompile) @ maven_demo_impl - - - [INFO] Not compiling test sources [INFO] [INFO] - - - maven - surefire - plugin: 2.21 . 0 :test (default - test) @ maven_demo_impl - - - [INFO] Tests are skipped. [INFO] [INFO] - - - maven - jar - plugin: 3.0 . 2 :jar (default - jar) @ maven_demo_impl - - - [INFO] Building jar: / var / lib / jenkins / workspace / maven_demo_impl / target / maven_demo_impl - 1.0 - SNAPSHOT.jar [INFO] [INFO] - - - spring - boot - maven - plugin: 2.0 . 5.RELEASE :repackage (default) @ maven_demo_impl - - - [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] BUILD SUCCESS [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [INFO] Total time: 11.163 s [INFO] Finished at: 2019 - 08 - 27T15 : 00 : 40 + 08 : 00 [INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SSH: Connecting from host [localhost.localdomain] SSH: Connecting with configuration [ 192.168 . 20.143 ] ... SSH: EXEC: STDOUT / STDERR from command [sh / projects / scripts / run.sh maven_demo_impl 10010 ] ... starting service... nohup: 把输出追加到 "nohup.out" maven_demo_impl : 4406 SUCCESS SSH: EXEC: completed after 20 , 262 ms SSH: Disconnecting configuration [ 192.168 . 20.143 ] ... SSH: Transferred 1 file (s) Finished: SUCCESS |
可以看到ssh已经有jar 并运行了。