运行bash文件构建项目时出现java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher错误

11

我已经安装了Maven 2。当我在应用程序根目录中使用mvn clean或mvn install时,它可以正常工作。

但是,当我尝试在bash脚本中使用maven install时,我遇到了上述异常:

这是我的脚本:

#!/bin/sh
#dirname='/home/myuser/workspace/myapp'
DIRECTORY=$(cd `dirname $0` && pwd)
cd  $DIRECTORY
mvn install -s resources/settings.xml $1

在使用Maven 3时,一切正常。但是,在我安装了Maven 2并进行了配置后,它停止工作并显示上述异常。我不知道问题出在哪里,因为常规的构建、mvn install可以正常工作,但是从脚本中构建则无法工作。

2个回答

15

有几种可能性...

  • 第一种情况,如这里所述,您已经定义了M2_REPO和M3_REPO变量。
  • 或者您面临的是与maven3和M2_HOME相关的此问题
  • 另外一种情况是在批处理文件中运行时,某些情况下使用的是JRE而不是JDK!

7
我在M2_HOME环境变量指向错误位置时遇到了这个问题。
请尝试:
$ cd $M2_HOME

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接