Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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
Maven 开始Spring3并执行应用程序时出错_Maven_Ubuntu_Spring 3_Sts Springsourcetoolsuite - Fatal编程技术网

Maven 开始Spring3并执行应用程序时出错

Maven 开始Spring3并执行应用程序时出错,maven,ubuntu,spring-3,sts-springsourcetoolsuite,Maven,Ubuntu,Spring 3,Sts Springsourcetoolsuite,我试着在我的Ubuntu机器上运行,但遇到了一些问题 首先,我正在开发Springsource ToolSuite 3.1.0版本,并在我的机器上安装了Maven。我已经在同一个网站上浏览了一个带有Maven教程的Java应用程序 首先,Maven不应该解决依赖性问题吗?当我写 import org.springframework.*; 我得到一个错误,说明无法找到库,因此我必须手动将JAR本身添加到构建路径中以解决该问题。尽管构建路径向导上存在许多.m2/REPO库路径,但仍然存在这种情况

我试着在我的Ubuntu机器上运行,但遇到了一些问题

首先,我正在开发Springsource ToolSuite 3.1.0版本,并在我的机器上安装了Maven。我已经在同一个网站上浏览了一个带有Maven教程的Java应用程序

首先,Maven不应该解决依赖性问题吗?当我写

import org.springframework.*;
我得到一个错误,说明无法找到库,因此我必须手动将JAR本身添加到构建路径中以解决该问题。尽管构建路径向导上存在许多.m2/REPO库路径,但仍然存在这种情况

mvn--version
返回

jason@asus:~/IDE/springsource/sts-3.1.0.RELEASE/plugins$ mvn --version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.6.0_24, vendor: Sun Microsystems Inc.
Java home: /usr/lib/jvm/java-6-openjdk-i386/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.5.7-03050702-generic", arch: "i386", family: "unix"
其次,当从命令行执行时,我得到以下打印输出:

jason@asus:~/Documents/workspace-sts-/SpringExample$ java -cp target/SpringExample-1.0-SNAPSHOT.jar com.jasonjohns.App
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/beans/factory/BeanFactory
  at java.lang.Class.getDeclaredMethods0(Native Method)
  at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
  at java.lang.Class.getMethod0(Class.java:2685)
  at java.lang.Class.getMethod(Class.java:1620)
  at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:492)
  at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:484)


Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.BeanFactory
  at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
为了确定,我检查了STS/plugins文件夹,那里有一个
org.springframework.beans\u 3.1.1.RELEASE.jar

我的pom.xml是

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
    <groupId>com.jasonjohns</groupId>
    <artifactId>SpringExample</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>SpringExample</name>
    <url>http://maven.apache.org</url>
<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
  </dependency>

  <!--  Spring 3 Dependencies  -->
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>3.1.1.RELEASE</version>
  </dependency>

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.1.1.RELEASE</version>
  </dependency>
</dependencies>
</project>

4.0.0
com.jasonjohns
春天的例子
罐子
1.0-快照
春天的例子
http://maven.apache.org
朱尼特
朱尼特
3.8.1
测试
org.springframework
弹簧芯
3.1.1.1发布
org.springframework
spring上下文
3.1.1.1发布

我会尝试在终端中导航到您项目的位置,然后执行
mvn eclipse:eclipse
。这将(重新)生成特定于Eclipse/Spring工具套件的文件——基本上是创建.classpath和.project文件(请参阅)

classpath本质上是您的构建路径,通过运行eclipse:eclipsemaven将根据pom.xml的内容为您生成它


完成后,在Eclipse/STS中刷新项目。确保选中“自动生成”(Project->build automatically)。

我会尝试在终端中导航到项目的位置,然后执行
mvn eclipse:eclipse
。这将(重新)生成特定于Eclipse/Spring工具套件的文件——基本上是创建.classpath和.project文件(请参阅)

classpath本质上是您的构建路径,通过运行eclipse:eclipsemaven将根据pom.xml的内容为您生成它


完成后,在Eclipse/STS中刷新项目。确保选中“自动生成”(Project->build automatically)。

pom.xml中有什么?@alex.p,添加了pom.xml文件pom.xml中有什么?@alex.p,添加了pom.xml文件有一个关于拼写错误的问题,但项目刷新成功了。该应用程序通过Run As->Java应用程序运行,但抛出NoClassDefFoundError,即找不到org.springframework.beans.factory.BeanFactory。有一个问题与拼写错误有关,但项目刷新解决了这个问题。该应用程序通过Run As->Java应用程序运行,但抛出一个NoClassDefFoundError,即找不到org.springframework.beans.factory.BeanFactory。