目录
2.5.使用新镜像启动容器(启动时挂载Maven等相关目录)
2.7.经过上面的【2.6】配置之后【2.4】中的错误信息解除
2.9.尝试使用github工程编译(随意选择一个公开的GitHub工程)
====
■成功
==
具体设置看【2.13.★★★不设置顶层pom★★★】
===

===

============
控制台Log
Started by user sxzJenkins
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/TestMaven2
The recommended git tool is: NONE
using credential 1c3ec82c-3839-4203-97a7-858515f55253
> git rev-parse --resolve-git-dir /var/jenkins_home/workspace/TestMaven2/.git # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url https://github.com/terasoluna-batch/terasoluna-batch.git # timeout=10
Fetching upstream changes from https://github.com/terasoluna-batch/terasoluna-batch.git
> git --version # timeout=10
> git --version # 'git version 2.39.2'
using GIT_ASKPASS to set credentials GitHubUser
> git fetch --tags --force --progress -- https://github.com/terasoluna-batch/terasoluna-batch.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision e0bd4a05ab9f2f98ed053c6b316064a354e9a35b (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f e0bd4a05ab9f2f98ed053c6b316064a354e9a35b # timeout=10
Commit message: "update to 3.6.4.RELEASE"
> git rev-list --no-walk e0bd4a05ab9f2f98ed053c6b316064a354e9a35b # timeout=10
Parsing POMs
Established TCP socket on 44183
[terasoluna-commons] $ /opt/java/jdk1.8.0_411/bin/java -Duser.language=UTF-8 -Dfile.encoding=UTF-8 -cp /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.14.jar:/opt/maven/apache-maven-3.9.6/boot/plexus-classworlds-2.7.0.jar:/opt/maven/apache-maven-3.9.6/conf/logging jenkins.maven3.agent.Maven35Main /opt/maven/apache-maven-3.9.6 /var/jenkins_home/war/WEB-INF/lib/remoting-3273.v4cfe589b_fd83.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.14.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.14.jar 44183
Exception in thread "main" java.lang.UnsupportedClassVersionError: hudson/remoting/Launcher has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at org.codehaus.plexus.classworlds.realm.ClassRealm.findClassInternal(ClassRealm.java:313)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:432)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
at jenkins.maven3.agent.Maven35Main.main(Maven35Main.java:136)
at jenkins.maven3.agent.Maven35Main.main(Maven35Main.java:66)
ERROR: ================================================================================
ERROR: Invalid project setup: Connection reset
ERROR: [JENKINS-18403][JENKINS-28294] JDK 'jdk1.8.0_411' not supported to run Maven projects.
ERROR: Maven projects have to be launched with a Java version greater or equal to the minimum version required by the controller.
ERROR: Use the Maven JDK Toolchains (plugin) to build your maven project with an older JDK.
ERROR: Retrying with agent Java and setting compile/test properties to point to /opt/java/jdk1.8.0_411.
ERROR: ================================================================================
Established TCP socket on 35375
[terasoluna-commons] $ /opt/java/openjdk/bin/java -Duser.language=UTF-8 -Dfile.encoding=UTF-8 -cp /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.14.jar:/opt/maven/apache-maven-3.9.6/boot/plexus-classworlds-2.7.0.jar:/opt/maven/apache-maven-3.9.6/conf/logging jenkins.maven3.agent.Maven35Main /opt/maven/apache-maven-3.9.6 /var/jenkins_home/war/WEB-INF/lib/remoting-3273.v4cfe589b_fd83.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.14.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.14.jar 35375
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
<===[JENKINS REMOTING CAPACITY]===>channel started
Executing Maven: -B -f /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/pom.xml -gs /opt/maven/apache-maven-3.9.6/conf/settings.xml -Dfile.encoding=UTF-8 -Dmaven.test.skip=true -Duser.language=UTF-8 -Dmaven.javadoc.skip=true clean package
[INFO] Scanning for projects...
[INFO]
[INFO] ----------------< jp.terasoluna.fw:terasoluna-commons >-----------------
[INFO] Building terasoluna-commons 3.6.4.RELEASE
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- clean:3.2.0:clean (default-clean) @ terasoluna-commons ---
[INFO] Deleting /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target
[INFO]
[INFO] --- resources:3.3.1:resources (default-resources) @ terasoluna-commons ---
[INFO] skip non existing resourceDirectory /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/src/main/resources
[INFO]
[INFO] --- compiler:3.1:compile (default-compile) @ terasoluna-commons ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 41 source files to /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/classes
[INFO]
[INFO] --- resources:3.3.1:testResources (default-testResources) @ terasoluna-commons ---
[INFO] Not copying test resources
[INFO]
[INFO] --- compiler:3.1:testCompile (default-testCompile) @ terasoluna-commons ---
[INFO] Not compiling test sources
[INFO]
[INFO] --- surefire:2.17:test (default-test) @ terasoluna-commons ---
[INFO] Tests are skipped.
[INFO]
[INFO] --- jar:2.5:jar (default-jar) @ terasoluna-commons ---
[INFO] Building jar: /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE.jar
[INFO]
[INFO] --- javadoc:2.10.1:jar (javadoc-jar) @ terasoluna-commons ---
[INFO] Skipping javadoc generation
[INFO]
[INFO] --- source:2.4:jar-no-fork (attach-sources) @ terasoluna-commons ---
[INFO] Building jar: /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE-sources.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14.422 s
[INFO] Finished at: 2024-11-01T14:10:39Z
[INFO] ------------------------------------------------------------------------
Waiting for Jenkins to finish collecting data
[JENKINS] Archiving /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/pom.xml to jp.terasoluna.fw/terasoluna-commons/3.6.4.RELEASE/terasoluna-commons-3.6.4.RELEASE.pom
[JENKINS] Archiving /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE.jar to jp.terasoluna.fw/terasoluna-commons/3.6.4.RELEASE/terasoluna-commons-3.6.4.RELEASE.jar
[JENKINS] Archiving /var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE-sources.jar to jp.terasoluna.fw/terasoluna-commons/3.6.4.RELEASE/terasoluna-commons-3.6.4.RELEASE-sources.jar
/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/pom.xml is not inside /var/jenkins_home/workspace/TestMaven2/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/; will archive in a separate pass
/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE.jar is not inside /var/jenkins_home/workspace/TestMaven2/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/; will archive in a separate pass
/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/target/terasoluna-commons-3.6.4.RELEASE-sources.jar is not inside /var/jenkins_home/workspace/TestMaven2/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/; will archive in a separate pass
channel stopped
Finished: SUCCESS
===
1.安装Jenkins
使用Docker快速创建一个Jenkins服务_docker 制作jenkins给别人使用-CSDN博客
==简单使用
Jenkins 创建一个 job , 用于单独执行脚本_jenkins构建后执行脚本-CSDN博客
2.安装Maven的插件
2.1.安装之前(不会显示创建Maven项目)

2.2.安装插件

===

===

===
2.3.安装之后的效果(可以创建Maven项目了)

2.4.还需配置(调查,保存当前已配置容器为新镜像)

==

===2024/10/25
Maven Version
Jenkins needs to know where your Maven is installed.
Please do so from the tool configuration.
虽然机器安装了Maven,但是Docker容器中,没有安装Maven
xxx
启动容器时,没有挂载Maven,解决方法如下
==
1.停止当前容器
2.把当前容器,重新保存为镜像
3.使用新镜像,重新创建容器,创建容器是,挂载自己机器上的MVN目录
=======
上面操作参照【下面】文章
Docker命令_各种参数简介(run、v、rm、-w、-u、-e)_docker -e-CSDN博客
==

========
2.5.使用新镜像启动容器(启动时挂载Maven等相关目录)
重新启命令
docker run \
-u root \
-d --name jenkins_sxz_2024_1027 \
--restart=always \
-p 8001:8080 \
-p 50000:50000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/jenkins_home:/var/jenkins_home \
-v /opt/maven/apache-maven-3.9.6:/opt/maven/apache-maven-3.9.6 \
-v /opt/java/jdk1.8.0_411:/opt/java/jdk1.8.0_411 \
-v /opt/mavenRepository:/opt/mavenRepository \
jenkins/jenkins_sxz_2024_1026
===

xxx
2.6.配置Maven
==

==使用【2.5】中挂载的Maven,JDK等目录进行配置


===

xxx
2.7.经过上面的【2.6】配置之后【2.4】中的错误信息解除
xxx

xxx在上图的【Pre Steps】中选择

===选择之后,选择这里的Maven配置,可以看到【2.6】中配置的Maven

xxx
2.8.尝试使用【mvn】命令执行

配置
正常情况下,【目标】应该写的是Git的地址!!!

效果(maven命令已经正常执行,只剩编译对象工程)

xxx和服务器端运行效果一致

xxx
2.9.尝试使用github工程编译(随意选择一个公开的GitHub工程)
xxx
https://github.com/terasoluna-batch/terasoluna-batch/tree/master/terasoluna-batch
xxx

配置

工程没有正常下载下来,即使写了命令 clean install 也无需

=======
效果

==

===

==
2.10.【2.9】出错原因解决
出错

原因:
配置完全错误,git的URL,应该写在下面的位置

【目标】空着就行

===【Trigger】

==
2.10.新的错误 timeout=10
新的错误 timeout=10
git config remote.origin.url https://github.com/terasoluna-batch/terasoluna-batch/ # timeout=10

2.11.新错误解决
URL后面要加上.git------无效
sshttps://github.com/terasoluna-batch/terasoluna-batch.git
修改timeout时间 ---无效

指定认证方式
也还是错误,不过代码应该已经取得了,应该是mvn命令时的错误

====
Started by user sxzJenkins Running as SYSTEM Building in workspace /var/jenkins_home/workspace/TestMaven The recommended git tool is: NONE using credential 1c3ec82c-3839-4203-97a7-858515f55253 > git rev-parse --resolve-git-dir /var/jenkins_home/workspace/TestMaven/.git # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url GitHub - terasoluna-batch/terasoluna-batch: TERASOLUNA Batch Framework for Java # timeout=10 Fetching upstream changes from GitHub - terasoluna-batch/terasoluna-batch: TERASOLUNA Batch Framework for Java > git --version # timeout=10 > git --version # 'git version 2.39.2' using GIT_ASKPASS to set credentials GitHubUser > git fetch --no-tags --force --progress -- GitHub - terasoluna-batch/terasoluna-batch: TERASOLUNA Batch Framework for Java +refs/heads/*:refs/remotes/origin/* # timeout=25 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 Checking out Revision e0bd4a05ab9f2f98ed053c6b316064a354e9a35b (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f e0bd4a05ab9f2f98ed053c6b316064a354e9a35b # timeout=10 Commit message: "update to 3.6.4.RELEASE" First time build. Skipping changelog. [TestMaven] $ /opt/maven/apache-maven-3.9.6/bin/mvn -s /opt/maven/apache-maven-3.9.6/conf/settings.xml -gs /opt/maven/apache-maven-3.9.6/conf/settings.xml [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.279 s [INFO] Finished at: 2024-10-30T13:03:08Z [INFO] ------------------------------------------------------------------------ [ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: pre-clean, clean, post-clean, validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-site, site, post-site, site-deploy. -> [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] NoGoalSpecifiedException - Apache Maven - Apache Software Foundation Build step 'Invoke top-level Maven targets' marked build as failure Finished: FAILURE
查看工作空间,果然,代码已经下载下来了

===
2.12.问题解决_初次运行效果
问题解决
指定【1:目标】(Project的目录)
【2:pom文件】,就在这个工程下面

===

===
对应关系(还需调整)
这么写找不到工程目录。。。
[INFO] Scanning for projects...

===
再次调整
clean
package
==
/var/jenkins_home/workspace/TestMaven/terasoluna-commons/pom.xml
===
maven.test.skip=true
maven.javadoc.skip=true
user.language=UTF-8
file.encoding=UTF-8

===
===
初次运行效果
[TestMaven] $ /opt/maven/apache-maven-3.9.6/bin/mvn -f /var/jenkins_home/workspace/TestMaven/terasoluna-commons/pom.xml -gs /opt/maven/apache-maven-3.9.6/conf/settings.xml -Dfile.encoding=UTF-8 -Dmaven.test.skip=true -Duser.language=UTF-8 -Dmaven.javadoc.skip=true clean package

===

xxx
2.13.★★★不设置顶层pom★★★
上面2.12中设置了顶层POM,我们可以不设置顶层pom
==
/var/jenkins_home/workspace/TestMaven2/terasoluna-commons/pom.xml
==
-Dfile.encoding=UTF-8 -Dmaven.test.skip=true -Duser.language=UTF-8 -Dmaven.javadoc.skip=true clean package
==

===

xxx

===

==
3.安装Git插件(已经安装了)
==

===
4.其它
4.1.我的服务器(含 Jenkins密码)
4.2.Docker使用
Docker命令_各种参数简介(run、v、rm、-w、-u、-e)_docker -e-CSDN博客
4.3.使用Docker创建Jenkins服务
使用Docker快速创建一个Jenkins服务_docker 制作jenkins给别人使用-CSDN博客
4.4.使用Jenkins创建Job
Jenkins 创建一个 job , 用于单独执行脚本_jenkins job-CSDN博客
==
4.5.再次重新启动(2024/10/24)
===
root@ubuntu:/home/ubuntu/DATA# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5b349803e372 jellyfin/jellyfin "/jellyfin/jellyfin" 5 months ago Up 3 weeks (healthy) 0.0.0.0:8082->8096/tcp, :::8082->8096/tcp hopeful_lichterman
25674f207618 wordpress:latest "docker-entrypoint.s…" 6 months ago Exited (0) 5 months ago my-wordpress
69a879a73da3 jenkins/jenkins "/usr/bin/tini -- /u…" 6 months ago Exited (143) 2 months ago jenkins
root@ubuntu:/home/ubuntu/DATA#
root@ubuntu:/home/ubuntu/DATA#
===
root@ubuntu:/home/ubuntu/DATA# docker start 69a879a73da3
69a879a73da3
root@ubuntu:/home/ubuntu/DATA#
===

===
Please wait while Jenkins is getting ready to work ...
Your browser will reload automatically when Jenkins is ready.
===

===
4.6.内存占用
==重启之后,直接只剩80%以上 ⇒ 60%。 占了总内存(8G)的20%以上

xxx
4.7.xxxx
xxx
4.8.xxx
xxx
5.我所在的地区软件行业状况
金兰:2024年05月15日
IBM:2024年08月26日
思科(CISCO):2024年09月18日
富达国际:2024年10月21日
。。。。。。
===
2895

被折叠的 条评论
为什么被折叠?



