运行mvn -v后出现 Error: JAVA_HOME is set to an invalid directory

安装Maven后运行mvn -v提示JAVA_HOME指向无效目录,作者参考多篇文章未解决问题,后进入maven/bin找到mvn.cmd,搜索JAVA_HOME,发现之前将%JAVA_HOME%配置在jdk目录,而jdk/bin中无java.exe,将其改到jre目录下问题解决。

安装完maven,运行mvn -v,提示:  Error: JAVA_HOME is set to an invalid directory.

在百度上看多篇文章说,环境变量该怎么配?是不是多;,等,未解决我的问题。

参考文章  https://blog.youkuaiyun.com/theNightSoCold/article/details/70739088  解决我的问题。

进入到maven/bin,找到mvn.cmd,搜索  JAVA_HOME,找到如下一行:


SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"


我之前配置的%JAVA_HOME%  在jdk目录,该jdk/bin 中没有java.exe.所以,我把%JAVA_HOME% 改到jre目录下,问题解决。失败和成功的截图如下:

 

Started by user sl Running as SYSTEM Building in workspace /var/jenkins_home/workspace/sl-express-gitflow-web [WS-CLEANUP] Deleting project workspace... [WS-CLEANUP] Deferred wipeout is used... [WS-CLEANUP] Done The recommended git tool is: NONE using credential 81a93e16-3a6b-474b-8727-1293bde49842 Cloning the remote Git repository Cloning repository http://git.sl-express.com/sl/sl-express-gitflow-web.git > /usr/bin/git init /var/jenkins_home/workspace/sl-express-gitflow-web # timeout=10 Fetching upstream changes from http://git.sl-express.com/sl/sl-express-gitflow-web.git > /usr/bin/git --version # timeout=10 > git --version # 'git version 2.30.2' using GIT_ASKPASS to set credentials gogs账号 > /usr/bin/git fetch --tags --force --progress -- http://git.sl-express.com/sl/sl-express-gitflow-web.git +refs/heads/*:refs/remotes/origin/* # timeout=10 > /usr/bin/git config remote.origin.url http://git.sl-express.com/sl/sl-express-gitflow-web.git # timeout=10 > /usr/bin/git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10 Avoid second fetch > /usr/bin/git rev-parse refs/remotes/origin/develop^{commit} # timeout=10 Checking out Revision 46c2028eb5f59801b8baca4d73fa5acbbbb33d2f (refs/remotes/origin/develop) > /usr/bin/git config core.sparsecheckout # timeout=10 > /usr/bin/git checkout -f 46c2028eb5f59801b8baca4d73fa5acbbbb33d2f # timeout=10 Commit message: "实现相乘的接口" > /usr/bin/git rev-list --no-walk 46c2028eb5f59801b8baca4d73fa5acbbbb33d2f # timeout=10 [SSH] script: chmod a+rw /var/run/docker.sock [SSH] executing... [SSH] completed [SSH] exit-status: 0 [sl-express-gitflow-web] $ /maven/bin/mvn -s /maven/conf/settings.xml -gs /maven/conf/settings.xml clean package -Dmaven.test.skip=true -U [INFO] Scanning for projects... [INFO] [INFO] -----------< com.sl-express.gitflow:sl-express-gitflow-web >------------ [INFO] Building sl-express-gitflow-web 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ sl-express-gitflow-web --- [INFO] [INFO] --- spring-boot-maven-plugin:2.6.6:build-info (default) @ sl-express-gitflow-web --- [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ sl-express-gitflow-web --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 3 resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ sl-express-gitflow-web --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 2 source files to /var/jenkins_home/workspace/sl-express-gitflow-web/target/classes [INFO] [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ sl-express-gitflow-web --- [INFO] Not copying test resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ sl-express-gitflow-web --- [INFO] Not compiling test sources [INFO] [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ sl-express-gitflow-web --- [INFO] Tests are skipped. [INFO] [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ sl-express-gitflow-web --- [INFO] Building jar: /var/jenkins_home/workspace/sl-express-gitflow-web/target/sl-express-gitflow-web-1.0-SNAPSHOT.jar [INFO] [INFO] --- spring-boot-maven-plugin:2.6.6:repackage (default) @ sl-express-gitflow-web --- [INFO] Replacing main artifact with repackaged archive [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.899 s [INFO] Finished at: 2025-06-29T23:35:04+08:00 [INFO] ------------------------------------------------------------------------ [sl-express-gitflow-web] $ /bin/bash /tmp/jenkins10798732479328880887.sh chmod: cannot access 'target/-1.0-SNAPSHOT.jar': No such file or directory Docker version 20.10.17, build 100c701 ---------停止容器()--------- "docker stop" requires at least 1 argument. See 'docker stop --help'. Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...] Stop one or more running containers ---------删除容器()--------- "docker rm" requires at least 1 argument. See 'docker rm --help'. Usage: docker rm [OPTIONS] CONTAINER [CONTAINER...] Remove one or more containers ---------删除镜像(:1.0-SNAPSHOT)--------- Error response from daemon: invalid reference format ---------构建新镜像(:1.0-SNAPSHOT)--------- invalid argument ":1.0-SNAPSHOT" for "-t, --tag" flag: invalid reference format See 'docker build --help'. ---------运行服务--------- docker: invalid reference format: repository name must be lowercase. See 'docker run --help'. Build step 'Execute shell' marked build as failure Finished: FAILURE
06-30
2025-09-12 03:59:46.390+0000 [id=63] INFO jenkins.InitReactorRunner$1#onAttained: System config adapted 2025-09-12 03:59:46.403+0000 [id=47] INFO jenkins.InitReactorRunner$1#onAttained: Loaded all jobs 2025-09-12 03:59:46.411+0000 [id=76] INFO jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated 2025-09-12 03:59:46.427+0000 [id=53] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization 2025-09-12 03:59:46.473+0000 [id=36] INFO hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running 2025-09-12 06:23:41.833+0000 [id=882] WARNING hudson.security.csrf.CrumbFilter#doFilter: Found invalid crumb 147b3c82bca9ebd1fa602daaf99e15931ab6f23e4863689a02a1634c924c7fef. If you are calling this URL with a script, please use the API Token instead. More information: https://www.jenkins.io/redirect/crumb-cannot-be-used-for-script 2025-09-12 06:23:41.834+0000 [id=882] WARNING hudson.security.csrf.CrumbFilter#doFilter: No valid crumb was included in request for /view/%E5%87%AF%E5%88%A9/job/%E6%8C%87%E6%8C%A5%E5%A4%A7%E5%B1%8Fapi-pipeline/descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile by admin. Returning 403. 2025-09-12 09:21:05.113+0000 [id=2548] WARNING j.p.p.BapSshClient#waitForExec: null java.lang.InterruptedException at java.base/java.lang.Object.wait(Native Method) at java.base/java.lang.Thread.join(Unknown Source) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.waitForExec(BapSshClient.java:567) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.exec(BapSshClient.java:481) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:242) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:51) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.endTransfers(BapPublisher.java:283) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.perform(BapPublisher.java:233) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.access$000(BapPublisher.java:205) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher.perform(BapPublisher.java:158) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:65) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:38) at hudson.FilePath.act(FilePath.java:1210) at hudson.FilePath.act(FilePath.java:1193) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPInstanceConfig.perform(BPInstanceConfig.java:141) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPPlugin.perform(BPPlugin.java:126) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71) at PluginClassLoader for workflow-step-api//org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:49) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) 2025-09-12 09:21:05.113+0000 [id=2640] WARNING j.p.p.BapSshClient$ExecCheckThread#run: sleep interrupted java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient$ExecCheckThread.run(BapSshClient.java:592) 2025-09-12 09:21:05.114+0000 [id=2548] WARNING j.p.p.BPCallablePublisher#invoke: Exception when publishing, exception message [Exec timed out or was interrupted after 64,625 ms] jenkins.plugins.publish_over.BapPublisherException: Exec timed out or was interrupted after 64,625 ms at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.waitForExec(BapSshClient.java:577) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.exec(BapSshClient.java:481) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:242) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:51) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.endTransfers(BapPublisher.java:283) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.perform(BapPublisher.java:233) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.access$000(BapPublisher.java:205) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher.perform(BapPublisher.java:158) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:65) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:38) at hudson.FilePath.act(FilePath.java:1210) at hudson.FilePath.act(FilePath.java:1193) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPInstanceConfig.perform(BPInstanceConfig.java:141) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPPlugin.perform(BPPlugin.java:126) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71) at PluginClassLoader for workflow-step-api//org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:49) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) 2025-09-12 09:21:05.115+0000 [id=2548] WARNING j.p.p.BPInstanceConfig#perform: An exception was caught when invoking perform jenkins.plugins.publish_over.BapPublisherException: Exec timed out or was interrupted after 64,625 ms at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.waitForExec(BapSshClient.java:577) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.exec(BapSshClient.java:481) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:242) at PluginClassLoader for publish-over-ssh//jenkins.plugins.publish_over_ssh.BapSshClient.endTransfers(BapSshClient.java:51) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.endTransfers(BapPublisher.java:283) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.perform(BapPublisher.java:233) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher$Performer.access$000(BapPublisher.java:205) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BapPublisher.perform(BapPublisher.java:158) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:65) Caused: jenkins.plugins.publish_over.BapPublisherException: Exception when publishing, exception message [Exec timed out or was interrupted after 64,625 ms] at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:69) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPCallablePublisher.invoke(BPCallablePublisher.java:38) at hudson.FilePath.act(FilePath.java:1210) at hudson.FilePath.act(FilePath.java:1193) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPInstanceConfig.perform(BPInstanceConfig.java:141) at PluginClassLoader for publish-over//jenkins.plugins.publish_over.BPPlugin.perform(BPPlugin.java:126) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:101) at PluginClassLoader for workflow-basic-steps//org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:71) at PluginClassLoader for workflow-step-api//org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:49) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007604e4b3ec9f, pid=7, tid=170 # # JRE version: OpenJDK Runtime Environment Temurin-17.0.16+8 (17.0.16+8) (build 17.0.16+8) # Java VM: OpenJDK 64-Bit Server VM Temurin-17.0.16+8 (17.0.16+8, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64) # Problematic frame: # V [libjvm.so+0x83dc9f] java_lang_Throwable::fill_in_stack_trace(Handle, methodHandle const&, JavaThread*)+0x95f # # Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -F%F -- %E" (or dumping to //core.7) # # An error report file with more information is saved as: # /tmp/hs_err_pid7.log # # If you would like to submit a bug report, please visit: # https://github.com/adoptium/adoptium-support/issues # Running from: /usr/share/jenkins/jenkins.war webroot: /var/jenkins_home/war 2025-09-12 09:22:52.973+0000 [id=1] INFO winstone.Logger#logInternal: Beginning extraction from war file 2025-09-12 09:22:53.005+0000 [id=1] WARNING o.e.j.ee9.nested.ContextHandler#setContextPath: Empty contextPath 2025-09-12 09:22:53.025+0000 [id=1] INFO org.eclipse.jetty.server.Server#doStart: jetty-12.0.22; built: 2025-06-02T15:25:31.946Z; git: 335c9ab44a5591f0ea941bf350e139b8c4f5537c; jvm 17.0.16+8 2025-09-12 09:22:53.151+0000 [id=1] INFO o.e.j.e.w.StandardDescriptorProcessor#visitServlet: NO JSP Support for /, did not find org.eclipse.jetty.ee9.jsp.JettyJspServlet 2025-09-12 09:22:53.168+0000 [id=1] INFO o.e.j.s.DefaultSessionIdManager#doStart: Session workerName=node0 2025-09-12 09:22:53.313+0000 [id=1] INFO hudson.WebAppMain#contextInitialized: Jenkins home directory: /var/jenkins_home found at: EnvVars.masterEnvVars.get("JENKINS_HOME") 2025-09-12 09:22:53.347+0000 [id=1] INFO o.e.j.s.handler.ContextHandler#doStart: Started oeje9n.ContextHandler$CoreContextHandler@1813f3e9{Jenkins v2.516.2,/,b=file:///var/jenkins_home/war/,a=AVAILABLE,h=oeje9n.ContextHandler$CoreContextHandler$CoreToNestedHandler@28cb9120{STARTED}} 2025-09-12 09:22:53.353+0000 [id=1] INFO o.e.j.server.AbstractConnector#doStart: Started ServerConnector@72458efc{HTTP/1.1, (http/1.1)}{0.0.0.0:8080} 2025-09-12 09:22:53.357+0000 [id=1] INFO org.eclipse.jetty.server.Server#doStart: Started oejs.Server@b9b00e0{STARTING}[12.0.22,sto=0] @603ms 2025-09-12 09:22:53.357+0000 [id=43] INFO winstone.Logger#logInternal: Winstone Servlet Engine running: controlPort=disabled 2025-09-12 09:22:53.400+0000 [id=36] INFO jenkins.model.Jenkins#<init>: Starting version 2.516.2 2025-09-12 09:22:53.430+0000 [id=50] INFO jenkins.InitReactorRunner$1#onAttained: Started initialization 2025-09-12 09:22:53.490+0000 [id=79] INFO jenkins.InitReactorRunner$1#onAttained: Listed all plugins 2025-09-12 09:22:54.524+0000 [id=108] INFO jenkins.InitReactorRunner$1#onAttained: Prepared all plugins 2025-09-12 09:22:54.531+0000 [id=65] INFO jenkins.InitReactorRunner$1#onAttained: Started all plugins 2025-09-12 09:22:54.532+0000 [id=65] INFO jenkins.InitReactorRunner$1#onAttained: Augmented all extensions 2025-09-12 09:22:54.725+0000 [id=27] INFO h.p.b.g.GlobalTimeOutConfiguration#load: global timeout not set 2025-09-12 09:22:55.091+0000 [id=94] INFO jenkins.InitReactorRunner$1#onAttained: System config loaded 2025-09-12 09:22:55.092+0000 [id=50] INFO jenkins.InitReactorRunner$1#onAttained: System config adapted 2025-09-12 09:22:55.114+0000 [id=95] INFO jenkins.InitReactorRunner$1#onAttained: Loaded all jobs 2025-09-12 09:22:55.115+0000 [id=69] INFO jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated 2025-09-12 09:22:55.139+0000 [id=83] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization 2025-09-12 09:22:55.204+0000 [id=36] INFO hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running
09-13
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值