您好,登錄后才能下訂單哦!
1.先卸載centeros自帶jdk
rpm-qa|grepopenjdk
查詢出來的自帶的openjdk
2.刪除
rpm-e--nodeps
3.再次查詢
rpm-qa|grepjdk
4.在usr/local創(chuàng)建文件夾
cd/usr/local mkdirjava
5.將jdk1.8放到剛剛創(chuàng)建的文件中
cd/usr/local/java
用xftp上傳后解壓
tar-zxvfjdk-8u181-linux-x64.tar.gz
6.進入剛剛解壓的文件夾
cdjdk1.8.0_181/pwd#(這一步記錄jdk1.8的路徑,一會配置環(huán)境用)
7.配置環(huán)境
vim/etc/profile
按i插入下面路徑
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退出后
source/etc/profile
8.查看是否成功
java-version
maven 環(huán)境配置
1.在/usr/local 下創(chuàng)建maven文件夾
cd/usr/localmkdirmaven
2.進去新建的文件夾
cdmaven
上傳 apache-maven-3.5.4-bin.zip
3.解壓
unzipapache-maven-3.5.4-bin.zip
4.進入解壓的文件夾
cdapache-maven-3.5.4/pwd#(記錄下這個路徑,一會配置環(huán)境用到)
5.配置環(huán)境
vim/etc/profile
按i插入下面
exportMAVEN_HOME=/usr/local/maven/apache-maven-3.5.4exportPATH=$PATH:$MAVEN_HOME/bin
按Esc后:wq保存后
source/etc/profile
6.查看是否成功
mvn-v
centeros7安裝git
yuminstallgit
一路下來y即可
查看是否是成功
git--version
查看git命令地址
which-agit
到此環(huán)境已經(jīng)搭建好,開始對maven私服,gitlab搭建。
gitlab搭建
1.新建 /etc/yum.repos.d/gitlab-ce.repo
vim/etc/yum.repos.d/gitlab-ce.repo
后按下 i 鍵 插入下面內(nèi)容
[gitlab-ce]name=GitlabCERepositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/gpgcheck=0enabled=1
2.
sudoyummakecachesudoyuminstallgitlab-ce#(安裝最新的)或sudoyuminstallgitlab-ce-12.0.4#(指定版本號)
3.配置 external_url
vim/etc/gitlab/gitlab.rb
修改external_url地址 為:http://本機地址:端口號/
本機地址查看:ifconfig
查看端口號運行的應(yīng)用 lsof -i:端口號
4.
gitlab-ctlreconfigure
5.
gitlab-ctlrestart#啟動gitlab-ctlstart|stop|status|restart#其他操作
6.訪問
http://本機地址:端口號/
常見問題gitlab502
: 這個是端口被占用
確保端口不被占用后從4開始繼續(xù)來一遍
centeros7 搭建maven私服
下載nexus3.x:
https://www.sonatype.com/download-oss-sonatype
1.在/usr/local下創(chuàng)建nexus文件
cd/usr/localmkdirnexuscdnexus
2.上傳剛剛下載的nexus壓縮包并解壓
tar-zxvfnexus-3.18.1-01-unix.tar.gz
3.
cdnexus-3.18.1-01/bin/ls
4.啟動
./nexusrun&
5.開啟遠程訪問端口
firewall-cmd--zone=public--add-port=8081/tcp--permanentfirewall-cmd--reload
瀏覽器訪問
6.設(shè)置開機自啟動
1.創(chuàng)建服務(wù)
vim/usr/lib/systemd/system/nexus.service
2.按i將下面復(fù)制進去
[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.將服務(wù)加入開機啟動
systemctlenablenexus.service
4.重新加載配置文件
systemctldaemon-reload
7.運行用戶為root (編輯nexus bin下的nexus.rc)
cd/usr/local/nexus/nexus-3.18.1-01/bin/vimnexus.rc
內(nèi)容改為:
run_as_user="root"
8.修改nexus3啟動時要使用的jdk版本
cd/usr/local/nexus/nexus-3.18.1-01/bin/vimnexus
按i將下面添加進去
INSTALL4J_JAVA_HOME_OVERRIDE=/usr/local/java/jdk1.8.0_181
java_home地址可以用echo $JAVA_HOME 輸出 (前提是/etc/profile有export)
9.修改nexus3默認端口
文件在nexus-xx
etc/nexus-default.properties
這里已經(jīng)搭建好了,下面是deploy到私服和從私服上下載下來測試
1.創(chuàng)建facade 上傳到私服
在/usr下創(chuàng)建projects
cd/usrmkdirprojects
將改zip解壓到projects進入到pom.xml所在目錄
mvndeploy-Dmaven.test.skip=true-U
已經(jīng)上傳成功
這里要把Allow anonymous users to access the server(允許匿名用戶訪問服務(wù)器)
因為本地maven沒有配置用戶
也可以用idea maven命令depoly
<?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 應(yīng)該和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 添加下面鏡像
<mirror><id>Central</id><url>http://repo1.maven.org/maven2</url><mirrorOf>central</mirrorOf></mirror>
最后settings文件。到這兒jar包已經(jīng)可以發(fā)布到私服上去了
再看怎么拉取的
maven_demo_impl項目的pom.xml
<?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> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </repository> <!-- 私服 --> <repository> <id>maven-public</id> <name>maven public</name> <url>http://192.168.20.143:8081/repository/maven-public/</url> </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.查看環(huán)境版本
java-version#沒有的話查看上文jdk1.8安裝mvn-v#沒有的話查看上文maven安裝git--version#沒有的話查看上文git安裝
2.安裝jenkenis
添加Jenkins源:
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.安裝
yuminstalljenkins
4.啟動
sudoservicejenkinsstart
5.訪問
http://ip:8080/#jenkenis默認是8080
第一次密碼:
vim /var/lib/jenkins/secrets/initialAdminPassword
點安裝推薦的插件(后面的選擇安裝不知道安裝什么)
修改jenkins端口
vim/etc/sysconfig/jenkins
將JENKINS_PORT="8080" ===> 修改成未占用想修改的端口 JENKINS_PORT="8089"
重啟服務(wù)
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的環(huán)境變量
echo$JAVA_HOME
2> 復(fù)制Java的環(huán)境變量地址, 編輯/etc/init.d/jenkins文件, 指定位置添加該地址, 后綴附上/bin/java
vim/etc/init.d/jenkins
重點是配置Jenkins:
1.配置全局jdk maven git
點Manage Jenkins(系統(tǒng)管理) --> Global Tool Configuaration(全局工具配置)
1.maven配置:配置settings.xml地址
2.配置jdk地址 (可以用echo $JAVA_HOME
獲取)
3.git配置地址 可以用(which -a git查看)
4.maven配置地址
2.新建任務(wù)
3.配置任務(wù)
1.配置源碼管理 下面version是gitlab的版本號
Repository URL:訪問的倉庫名稱 Credentials:訪問賬目密碼或者ssh證書 Branch Specifier (blank for ‘a(chǎn)ny'):訪問的分支,可以多個源碼庫瀏覽器:選擇源碼庫服務(wù)器 URL:源碼倉庫url Version:源碼庫服務(wù)器版本號
2.配置構(gòu)建
cleancompilepackageinstalldeploy-Dmaven.test.skip=true-U#將jar發(fā)布
然后應(yīng)用,配置完成!
3.在my view(我的視圖) -> 找到新建的項目 --> 點擊build now(立即構(gòu)建)
在構(gòu)建歷史中點擊剛剛的構(gòu)建如下圖: #1 : 是構(gòu)建的id ,控制臺輸出: 可以看到具體的輸出
下面是輸入日志 可以看到以前拉取到指定的項目master分支
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
上面報錯是項目問題,可以看到已經(jīng)拉取到項目了。所以要保證項目的正確性。
下面是正確的兩個項目運行實例在搭建好gitlab nexus jenkins后實現(xiàn)自動發(fā)jar到私服及啟動jar項目
背景: gitlab nexus jenkins都已經(jīng)完成了
1.從gitlab下載項目后發(fā)布jar到私服
重新配置gitlab地址:
配置maven命令:
cleancompilepackageinstalldeploy-Dmaven.test.skip=true-U
點擊build now 然后看控制臺輸出如下
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發(fā)布到指定的機器
確保jenkins安裝了Publish Over SSH插件 Manage Jenkins -> Manage Plugins -> 搜索ssh
然后配置ssh
配置后點擊Test Configuration 出現(xiàn)success
配置完成后新建Item(項目)只是多加了一個構(gòu)建后(注意前面的配置要想要的改 :項目的git地址
)
#最后一個執(zhí)行的腳本放到的位置是/projects/scripts mkdir scripts vim run.sh #按i將下面內(nèi)容復(fù)制進去 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 #根據(jù)重啟后是否有當前應(yīng)用判斷啟動是否成功 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
現(xiàn)在立即構(gòu)建 查看控制臺輸出
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已經(jīng)有jar 并運行了。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。