Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用m2e,在运行maven build compile时获取noclassdeffound错误_Java_Maven_Soap - Fatal编程技术网

Java 使用m2e,在运行maven build compile时获取noclassdeffound错误

Java 使用m2e,在运行maven build compile时获取noclassdeffound错误,java,maven,soap,Java,Maven,Soap,我是Maven的新手,这是之前一个问题的后续问题()回答我的那位先生告诉我检查依赖关系,我注意到显然有一个冲突。因此,我知道如何从logback中排除SLF4J 1.7.5,只使用guava的1.7.2版本(因为我不知道如何从依赖项的依赖项中排除…),我仍然会遇到与以前相同的错误,但当我再次运行依赖项命令时,似乎没有任何错误: [INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ auth --- [INFO] com.v2.au

我是Maven的新手,这是之前一个问题的后续问题()回答我的那位先生告诉我检查依赖关系,我注意到显然有一个冲突。因此,我知道如何从logback中排除SLF4J 1.7.5,只使用guava的1.7.2版本(因为我不知道如何从依赖项的依赖项中排除…),我仍然会遇到与以前相同的错误,但当我再次运行依赖项命令时,似乎没有任何错误:

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ auth ---
[INFO] com.v2.auth:auth:jar:0.0.1-SNAPSHOT
[INFO] +- junit:junit:jar:3.8.1:test
[INFO] +- ch.qos.logback:logback-classic:jar:1.0.13:compile
[INFO] |  \- ch.qos.logback:logback-core:jar:1.0.13:compile
[INFO] +- com.jolbox:bonecp:jar:0.8.0.RELEASE:compile
[INFO] |  +- com.google.guava:guava:jar:15.0:compile
[INFO] |  \- org.slf4j:slf4j-api:jar:1.7.2:compile
[INFO] \- mysql:mysql-connector-java:jar:5.1.6:compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.346s
[INFO] Finished at: Wed Jan 29 15:53:43 EST 2014
[INFO] Final Memory: 12M/149M
作为参考,我得到的错误是:

Exception in thread "main" java.lang.NoClassDefFoundError: com/ning/http/client/AsyncHttpProvider
at org.sonatype.aether.connector.async.AsyncRepositoryConnectorFactory.newInstance(AsyncRepositoryConnectorFactory.java:106)
at org.sonatype.aether.impl.internal.DefaultRemoteRepositoryManager.getRepositoryConnector(DefaultRemoteRepositoryManager.java:346)
at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:453)
at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:216)
at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:193)
at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:281)
at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
at org.sonatype.aether.impl.internal.DefaultRepositorySystem.readArtifactDescriptor(DefaultRepositorySystem.java:279)
at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:115)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getPluginDescriptor(DefaultMavenPluginManager.java:142)
at org.apache.maven.plugin.DefaultBuildPluginManager.loadPlugin(DefaultBuildPluginManager.java:59)
at org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver.resolveFromProject(DefaultPluginPrefixResolver.java:139)
at org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver.resolveFromProject(DefaultPluginPrefixResolver.java:122)
at org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver.resolve(DefaultPluginPrefixResolver.java:86)
at org.apache.maven.lifecycle.internal.MojoDescriptorCreator.findPluginForPrefix(MojoDescriptorCreator.java:262)
at org.apache.maven.lifecycle.internal.MojoDescriptorCreator.getMojoDescriptor(MojoDescriptorCreator.java:222)
at org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:106)
at org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:86)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:98)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
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)
Caused by: java.lang.ClassNotFoundException: com.ning.http.client.AsyncHttpProvider
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)
... 32 more
所以我想我的问题是,我该怎么办?我试图从google或其他问题中找到更多关于这个错误的信息,但每个人都不停地说,因为它缺少一个类,这很明显,但这只是在我开始使用maven之后才开始发生的,所以这一定意味着我缺少一个依赖项?我需要包括什么来阻止这个问题

还有一个附带说明:当我在正确的文件夹上通过命令行运行mvn compile时,该项目会生成,当然,当运行它时,它会声称存在cert问题,尽管它与我切换到maven之前使用的代码完全相同,它工作得非常好

此外,如果需要,这里是我的POM,用于此项目:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.v2.auth</groupId>
  <artifactId>auth</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>auth</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.0.13</version>
      <exclusions>
        <exclusion>  <!-- declare the exclusion here -->
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>com.jolbox</groupId>
      <artifactId>bonecp</artifactId>
      <version>0.8.0.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.6</version>
    </dependency>
  </dependencies>

  <build>
   <plugins>
     <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <configuration>
            <archive>
              <manifest>
                <mainClass>com.v2.auth.App</mainClass>
              </manifest>
            </archive>
            <descriptorRefs>
              <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
          </configuration>
          <executions>
            <execution>
              <id>make-assembly</id> <!-- this is used for inheritance merges -->
              <phase>package</phase> <!-- bind to the packaging phase -->
              <goals>
                <goal>single</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.0</version>
          <configuration>
           <source>1.7</source>
           <target>1.7</target>
          </configuration>
        </plugin>
    </plugins>
  </build>
</project>

4.0.0
com.v2.auth
认证
0.0.1-快照
罐子
认证
http://maven.apache.org
UTF-8
朱尼特
朱尼特
3.8.1
测试
回写
回归经典
1.0.13
org.slf4j
slf4j api
com.jolbox
博内克
0.8.0.1版本
mysql
mysql连接器java
5.1.6
maven汇编插件
com.v2.auth.App
带有依赖项的jar
组装
包裹
单一的
org.apache.maven.plugins
maven编译器插件
3
1.7
1.7

如果这只是一个愚蠢而明显的问题,我很抱歉,但我自己也无法解决这个问题。

这与您的代码或其依赖项无关。查看发布的stacktrace,很明显这是m2e特性的问题,特别是Sonatype中的“异步http客户端”插件。在Eclipse中重新安装m2e。下面的屏幕截图显示了我的eclipse中m2e的插件。请注意列表中的第一项


尝试添加com.ning异步http客户端1.6.1完美谢谢!我不敢相信这就是全部。