DigitalExperienceManager-CommunityDistribution-7.3.1.0 以错误“无法将 maven 可执行文件设置为 mvn,请检查您的配置”开始

Posted

技术标签:

【中文标题】DigitalExperienceManager-CommunityDistribution-7.3.1.0 以错误“无法将 maven 可执行文件设置为 mvn,请检查您的配置”开始【英文标题】:DigitalExperienceManager-CommunityDistribution-7.3.1.0 starts with error 'Cannot set maven executable to mvn, please check your configuration' 【发布时间】:2020-12-17 02:02:22 【问题描述】:

我已经在我的 MAC 上安装了 DigitalExperienceManager-CommunityDistribution-7.3.1.0-r59490.jar,然后运行命令来启动它:

cd /Applications/DigitalExperienceManager-CommunityDistribution-7.3.1.0/
./start.sh

我在 catalina.out 中发现了这个错误:

2020-12-16 19:14:55,509:信息 [ProcessHelper] - [mvn,-version] 2020-12-16 19:14:55,517:错误 [ModuleBuildHelper] - 无法设置 Maven 可执行到 mvn,请检查您的配置 org.jahia.exceptions.JahiaRuntimeException:java.io.IOException: 无法运行程序“mvn”(在目录“.”中):错误=2,没有这样的文件或 目录在 org.jahia.utils.ProcessHelper.execute(ProcessHelper.java:203) 在 org.jahia.utils.ProcessHelper.execute(ProcessHelper.java:138) 在 org.jahia.services.templates.ModuleBuildHelper.checkMavenExecutable(ModuleBuildHelper.java:493) 在 org.jahia.services.templates.ModuleBuildHelper.afterPropertiesSet(ModuleBuildHelper.java:534) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1573)

在 org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112) 在 org.apache.pluto.driver.PortalStartupListener.contextInitialized(PortalStartupListener.java:108) 在 org.jahia.bin.listeners.JahiaContextLoaderListener.contextInitialized(JahiaContextLoaderListener.java:235)

原因:java.io.IOException:无法运行程序“mvn”(在目录中 "."): error=2, No such file or directory at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) 在 java.lang.Runtime.exec(Runtime.java:620) 在 org.apache.commons.exec.launcher.Java13CommandLauncher.exec(Java13CommandLauncher.java:61) 在 org.apache.commons.exec.DefaultExecutor.launch(DefaultExecutor.java:279) 在 org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:336) 在 org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166) 在 org.jahia.utils.ProcessHelper.execute(ProcessHelper.java:199) ... 80 多个原因:java.io.IOException: error=2, No such file or java.lang.UNIXProcess.forkAndExec(Native Method) 的目录 java.lang.UNIXProcess.(UNIXProcess.java:247) 在 java.lang.ProcessImpl.start(ProcessImpl.java:134) 在 java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) ... 86 更多 2020-12-16 19:14:55,523:错误 [ModuleBuildHelper] - 直到 maven 可执行文件设置正确,工作室将不可用

但我确定我的机器上已经安装了 maven:

$ mvn -version Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven 主页: /Users/george/apache-maven-3.6.3 Java 版本:1.8.0_191,供应商: 甲骨文公司,运行时: /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home/jre 默认语言环境:zh_CN,平台编码:UTF-8 操作系统名称:“mac os x”, 版本:“10.15.5”,拱:“x86_64”,家庭:“mac”

我能做些什么来解决这个问题?

【问题讨论】:

【参考方案1】:

你的路径中有 maven 吗?似乎 Jahia 在启动时找不到 maven。当它不在路径中时,您可以在 jahia.properties (\digital-factory-config\jahia\jahia.properties) 中指定 maven 的完整路径:

#mvnPath = mvn

取消注释该属性并指定正确的maven路径,如:

mvnPath = /usr/local/apache-maven/bin/mvn

【讨论】:

谢谢。我已将 maven 安装从 ~/apache-maven-3.6.3 移动到 /opt/apache-maven-3.6.3,并重新导出 /opt/apache-maven-3.6.3/bin,然后应用程序正确启动.

以上是关于DigitalExperienceManager-CommunityDistribution-7.3.1.0 以错误“无法将 maven 可执行文件设置为 mvn,请检查您的配置”开始的主要内容,如果未能解决你的问题,请参考以下文章