2

我刚刚将新的 Maven 安装到我的新 Fedora 17 64 位。

细节:

java版本

java version "1.6.0_32"
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.7-b02, mixed mode)

javac-版本

javac 1.6.0_32

回声 $JAVA_HOME

/usr/java/jdk1.6.0_32

回声 $JRE_HOME

/usr/java/jdk1.6.0_32/jre

回声 $M2_HOME

/usr/local/maven/apache-maven-3.0.4

回声 $M2

/usr/local/maven/apache-maven-3.0.4/bin

回声 $PATH

/usr/local/maven/apache-maven-3.0.4/bin:/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/usr/java/jdk1.6.0_32/bin:/home/bujaka/.local/bin:/home/bujaka/bin

哪个MVN

/usr/local/maven/apache-maven-3.0.4/bin/mvn

但是 mvn -version 抛出 java.lang.ClassNotFoundException。

java.lang.ClassNotFoundException: org.apache.maven.cli.MavenCli
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.getMainClass(Launcher.java:145)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:267)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)                                                    
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)                                          
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)

PS我从apache站点安装了maven(不是从fedora repos)

4

3 回答 3

3

谢谢user1436170,您的最后一条评论也为我完成了这项工作:

/lib catalog was empty in maven.tar.gz archive.

通过 krusader 打开时,tar.gz 文件中的 lib 文件夹为空,但通过 ark 打开时包含 jars。

无论如何 zip 工作。

于 2012-10-02T13:36:09.123 回答
1

我刚刚遇到了同样的问题。Bujaka 的评论和 Peter Butkovic 的回答解决了这个问题,但为了记录,这是我对它的看法和我使用的解决方案。

我不知道是什么原因造成的,但有时 maven 安装目录中 /lib 文件夹的全部内容可能会变空。当您收到此错误时,可能就是这种情况。

如果您检查您的 /lib 文件夹并发现它不是空的,那么仍然有可能(尽管不太可能)某个关键文件以某种方式被删除。

如果您的 maven 安装使用 find 并且最近才开始起作用,那么您使用的压缩存档可能没问题。这是做什么:

  1. 重命名你的安装目录(或者如果你很勇敢,就删除它)。
  2. 获取原始压缩存档。(如果你像我一样,它仍然在你日益混乱的下载文件夹中。如果不是,你将不得不重新下载它。)
  3. 将所述存档解压缩到原始安装目录的位置(您可以重命名或删除)。

您的 Maven 安装现在应该可以再次工作了。

于 2016-02-01T21:54:25.327 回答
0

MavenCli 类在 maven-embedder 中。你在代理后面吗?

  <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <proxies>
    <proxy>
      <id>myproxy</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy.somewhere.com</host>
      <port>8080</port>
      <username>proxyuser</username>
      <password>somepassword</password>
      <nonProxyHosts>*.google.com|ibiblio.org</nonProxyHosts>
    </proxy>
  </proxies>
  ...
</settings>

@See Maven 代理设置

于 2012-06-04T23:32:38.623 回答