centeros7 安装配置环境jdk1.8的教程

1.先卸载centeros自带jdk

rpm-qa|grepopenjdk

查询出来的自带的openjdk

2.删除

rpm-e--nodeps

3.再次查询

rpm-qa|grepjdk

4.在usr/local创建文件夹

cd/usr/local
mkdirjava

5.将jdk1.8放到刚刚创建的文件中

cd/usr/local/java

用xftp上传后解压

tar-zxvfjdk-8u181-linux-x64.tar.gz

6.进入刚刚解压的文件夹

cdjdk1.8.0_181/pwd#(这一步记录jdk1.8的路径,一会配置环境用)

7.配置环境

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 环境配置

1.在/usr/local 下创建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#(记录下这个路径,一会配置环境用到)

5.配置环境

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

到此环境已经搭建好,开始对maven私服,gitlab搭建。

gitlab搭建

1.新建 /etc/yum.repos.d/gitlab-ce.repo

vim/etc/yum.repos.d/gitlab-ce.repo

后按下 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

查看端口号运行的应用 lsof -i:端口号

4.

gitlab-ctlreconfigure

5.

gitlab-ctlrestart#启动gitlab-ctlstart|stop|status|restart#其他操作

6.访问

http://本机地址:端口号/

常见问题gitlab502: 这个是端口被占用

确保端口不被占用后从4开始继续来一遍

centeros7 搭建maven私服

下载nexus3.x:

https://www.sonatype.com/download-oss-sonatype

1.在/usr/local下创建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.设置开机自启动

1.创建服务

vim/usr/lib/systemd/system/nexus.service

2.按i将下面复制进去

[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.将服务加入开机启动

systemctlenablenexus.service

4.重新加载配置文件

systemctldaemon-reload

7.运行用户为root (编辑nexus bin下的nexus.rc)

cd/usr/local/nexus/nexus-3.18.1-01/bin/vimnexus.rc

内容改为:

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

这里已经搭建好了,下面是deploy到私服和从私服上下载下来测试

1.创建facade 上传到私服

在/usr下创建projects

cd/usrmkdirprojects

将改zip解压到projects进入到pom.xml所在目录

mvndeploy-Dmaven.test.skip=true-U

已经上传成功

这里要把Allow anonymous users to access the server(允许匿名用户访问服务器)

因为本地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 应该和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包已经可以发布到私服上去了

再看怎么拉取的

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.查看环境版本

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"

重启服务

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的环境变量

echo$JAVA_HOME

2> 复制Java的环境变量地址, 编辑/etc/init.d/jenkins文件, 指定位置添加该地址, 后缀附上/bin/java

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.配置构建

cleancompilepackageinstalldeploy-Dmaven.test.skip=true-U#将jar发布

然后应用,配置完成!

3.在my view(我的视图) -> 找到新建的项目 --> 点击build now(立即构建)

在构建历史中点击刚刚的构建如下图: #1 : 是构建的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

上面报错是项目问题,可以看到已经拉取到项目了。所以要保证项目的正确性。

下面是正确的两个项目运行实例在搭建好gitlab nexus jenkins后实现自动发jar到私服及启动jar项目

背景: gitlab nexus jenkins都已经完成了

1.从gitlab下载项目后发布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发布到指定的机器

确保jenkins安装了Publish Over SSH插件 Manage Jenkins -> Manage Plugins -> 搜索ssh

然后配置ssh

配置后点击Test Configuration 出现success

配置完成后新建Item(项目)只是多加了一个构建后(注意前面的配置要想要的改 :项目的git地址)

#最后一个执行的脚本放到的位置是/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

现在立即构建 查看控制台输出

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 并运行了。

(0)

相关推荐

  • centos7.0安装离线JDK1.8方法详解

    查看java仓库版本 yum list |grep java 查看已安装java jdk版本 rpm -qa | grep java 如果没有显示信息表示还没有安装jdk版本 如果显示如下信息: rpm -qa|grep jdk java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64 java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64 java-1.7.0-openjdk-headless-1.7.0.

  • centOS7安装jdk1.8的方法

    1.在/usr/local 目录下新建Java文件夹 mkdir /usr/local/java 将jdk拷贝到 /usr/local/java  进入到java文件夹,解压压缩包 tar xvf jdk-8u181-linux-x64.tar.gz 2.设置环境变量  这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量  找到/etc/profile,编辑,在末尾添加 export JAVA_HOME=/usr/local/java/jdk1.8.0_181

  • centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的方法

    本文实例讲述了centos7.2.1511安装jdk1.8.0_151及mysql5.6.38的方法.分享给大家供大家参考,具体如下: 一:环境 二:下载jdk的rpm包到本地,上传到服务器(因为这块我刚开始使用wget直接下载到服务器,安装不断报错,所以我决定使用这种笨办法) 下载地址:http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x6

  • linux下使用 CentOS7安装jdk1.7

    步骤一 卸载原有或自带jdk 有些linux系统会自带OPENJDK,我们最好先将原有自带的jdk删除掉再安装. (1)用 java -version 命令查看当前jdk版本信息 java -version (2)用rpm -qa | grep java 命令查询操作系统自身安装的java rpm -qa | grep java 步骤二 下载安装jdk 在网上找到的资料,多数jdk下载路径均已失效,所以建议大家去百度自行寻找,或者在官网下载.这里很多资料使用curl+地址的方法下载,不过我们要明

  • Linux centos7环境下jdk安装教程

    详解Linux centos7环境下安装JDK的步骤,供大家参考,具体内容如下 测试root用户下JAVA版本 输入命令:java –version 1.先到Oracle官网里下载好jdk,网址如下: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.把刚下载好的jdk上传到Linux系统里,这里我借助了一个工具WinSCP 3.然后把下载好的jdk包上传到software文

  • centeros7 安装配置环境jdk1.8的教程

    1.先卸载centeros自带jdk rpm-qa|grepopenjdk 查询出来的自带的openjdk 2.删除 rpm-e--nodeps 3.再次查询 rpm-qa|grepjdk 4.在usr/local创建文件夹 cd/usr/local mkdirjava 5.将jdk1.8放到刚刚创建的文件中 cd/usr/local/java 用xftp上传后解压 tar-zxvfjdk-8u181-linux-x64.tar.gz 6.进入刚刚解压的文件夹 cdjdk1.8.0_181/pw

  • win7 64位系统JDK安装配置环境变量教程

    由于重做系统,平时需要进行android类编译反编译工作,于是重新装了下JDK并把过程记录分享出来. 具体步骤 首先,下载JDK安装包,到官网http://www.oracle.com/technetwork/java/javase/downloads/index.html进行下载,点左边的Java Platform (JDK) 7u51进入下一个下载页面, 点左边的Accept License Agreement,接受许可协议,方能下载,由于我装的WIN7 64位系统,所以选对应的64位安装包

  • 在Win10上安装Tomcat服务器及配置环境变量的详细教程(图文)

    Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选.本文主要讲述Windows环境Tomcat服务器安装与环境变量配置 下载安装JDK 要想安装Tomcat服务器,首先要安装配置好JDK,可以参考JDK安装与环境变量配置 Windows + R然后输入cmd进入命令行窗口,检查Java是否安装正确,检查的命令为java -version 如果输出类似下面的内容说明安装成功

  • Intelli IDEA安装Scala插件并安装Scala软件和配置环境变量的详细教程

    下载IDEA插件 IDEA插件 选择版本号 下载与IDEA版本号相近的插件 打开IDEA,导入下载好的插件在File下找到setting 在Plugins中选择Install plugins from disk 放入下载好的压缩包 点击ok,完成插件的安装 下载Scala软件并配置环境变量 Scala软件下载 安装到本地配置环境变量 测试Scala是否安装成功 创建Scala工程测试 在File中选择New下的Project 选择scala下的IDEA 第一次创建Scala工程时会发现这儿是空的

  • mac安装mysql数据库及配置环境变量的图文教程

    目录 安装mysql 配置环境变量 安装mysql 下载mysql.我下载的是:mysql-8.0.11-macos10.13-x86_64.dmg 双击打开mysql-8.0.11-macos10.13-x86_64.dmg,然后双击mysql-8.0.11-macos10.13-x86_64.pkg 一路点击继续,傻瓜式安装,没什么好说的 此处选择"Use Legacy Password Encryption",否则使用navicat连接mysql的时候,会报无法加载身份验证的错误

  • Centos7安装配置NFS服务和挂载教程(推荐)

    现在有3台服务器 s1(主),s2(从), s3(从)需要实现文件实时同步,我们可以安装Nfs服务端和客户端来实现! 一.安装 NFS 服务器所需的软件包: yum install -y nfs-utils 二.编辑exports文件,添加从机 vim /etc/exports /home/nfs/ 192.168.248.0/24(rw,sync,fsid=0) 同192.168.248.0/24一个网络号的主机可以挂载NFS服务器上的/home/nfs/目录到自己的文件系统中 rw表示可读写

  • mysql 5.6.23 安装配置环境变量教程

    本文为大家分享了mysql 5.6.23 安装配置教程,供大家参考,具体内容如下 1 下载mysql 2 安装mysql 3 配置环境变量 打开我的电脑->属性->高级->环境变量,在系统变量里选择PATH,在其后面添加: 你的mysql bin文件夹的路径  如: 4 测试 出现上面的界面 说明配置成功了 也可以输入"net start mysql"启动mysq,出现上面界面说明启动成功了.然后输入"mysql -hlocalhost -uroot -pr

  • python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)

    目录 一.python环境的搭建 1.下载python(这里以python3.6为例) 2.安装python(这里以python3.6为例) 二.pycharm的安装与配置 1.pycharm的下载 2.pycharm的安装 3.pycharm的入门基础配置 4.pycharm的python解释器的搭建 5.pycharm的建立一个新项目 6.pycharm汉化 前言:写这篇文章主要是介绍一下python的环境搭建和pycharm的安装配置,适合零基础的同学观看.这篇文章你会学到python的环

  • Deepin20安装开发环境的超详细教程

    Deepin安装开发环境 系统环境配置 挂载分区 1.挂载分区(需要先卸载分区): deepin:sudo mount -t ext4 /dev/sda3 /media/zgren -o ro 此处使用deepin官网用的这个 sudo mount /dev/sda3 /media/aborn/data 2.查询uuid: sudo blkid /dev/sda3 3.修改分区文件,防止重启后挂载无效 vim /etc/fstab 添加如下内容: UUID=查询到的UUID /media/abo

  • CentOS系统上安装配置Oracle数据库的详细教程

    一.基本配置   1.硬盘剩余空间:10G以上     虽然Oracle 10g的安装文件只有800多MB,但安装后的oracle+oraInventory目录会用差不多4G空间,再加上安装时Oracle生成的临时文件(/tmp目录需要至少400MB). 2.内存1.5G以上     官方文档说512M内存也可以安装.为了避免不必要的麻烦,请把内存加多一些. 3.Swap交换区2G 二.CenOS6 上安装Oracle 10g 1.准备安装 在安装Oracle之前执行以下命令: yum inst

随机推荐