我已经在Eclipse中创建了一个简单的Java项目,并在根文件夹中创建了pom.xml文件。现在,我想通过执行pom.xml文件来下载所有Spring Framework依赖项。
是否可以在简单的Java项目中而不在Maven项目中使用pom.xml文件并下载所有Spring Framework依赖项?
我右键单击pom.xml文件并以“ Maven install”运行
在控制台上,我发现了这一点。
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building my-app 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ my-app ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/oodles/Documents/MyWorkspace/MySpringProjectMaven/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ my-app ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ my-app ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/oodles/Documents/MyWorkspace/MySpringProjectMaven/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ my-app ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ my-app ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ my-app ---
[WARNING] JAR will be empty - no content was marked for inclusion!
[INFO] Building jar: /home/oodles/Documents/MyWorkspace/MySpringProjectMaven/target/my-app-1.jar
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ my-app ---
[INFO] Installing /home/oodles/Documents/MyWorkspace/MySpringProjectMaven/target/my-app-1.jar to /home/oodles/.m2/repository/com/qasim/app/my-app/1/my-app-1.jar
[INFO] Installing /home/oodles/Documents/MyWorkspace/MySpringProjectMaven/pom.xml to /home/oodles/.m2/repository/com/qasim/app/my-app/1/my-app-1.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.013 s
[INFO] Finished at: 2015-03-18T23:32:49+05:30
[INFO] Final Memory: 8M/150M
[INFO] ------------------------------------------------------------------------
我不明白单击Maven安装后会发生什么。一些文件夹使用my-app.jar创建了一个名为target的文件夹,我添加了这个jar来构建path。但是我认为这是行不通的。我有以下代码的Test类:
package com.qasim.app;
public class Test {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("MySpringConfig.xml");
Restaurant obj = (Restaurant) context.getBean("restaurantBean");
obj.greetCustomer();
}
}
和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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.qasim.app</groupId>
<artifactId>my-app</artifactId>
<version>1</version>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.0.5.RELEASE</version>
</dependency>
</dependencies>
</project>
但是在测试类编译器中,如果在运行“ Maven install”命令后下载了依赖项,则在应用程序上下文行“创建名为applicationContext的类”中抱怨,那么它应该为应用程序上下文显示一些“导入提示”
更新:一开始的建议:我真的建议您查阅位于http://maven.apache.org/guides/index.html的官方文档-请花点时间阅读至少“简介”下面的要点,因为它会向您解释如何使用Maven及其工作方式;)
我复制并粘贴了您pom.xml
的Java类,并且可以编译您的Java类(很好,我删除了Restaurant引用,只是为Spring配置创建了一个空文件)。
查看您的构建输出:
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ my-app ---
[INFO] No sources to compile
Maven告诉您它不会编译任何源-这强烈意味着您没有使用正确的标准Maven文件夹结构。
我只是使用您pom.xml
和Maven标准文件夹结构来建立一个小型项目,如下所示:
(注意:由于我在办公室内书写时,由于公司安全限制,我不得不删除路径)
如果src/main/java
在src/main/resources
Maven下设置类并将其放在Maven下,则可以找到该类并对其进行编译,同时它还将占用您的资源并将其放置在jar中。以我为例,我只是创建了一个空文件MySpringConfig.xml
,当尝试加载该文件时显然无法正常工作,ApplicationContext
但是您可以在下面的堆栈跟踪中看到可以找到并加载该文件本身(但是在解析该文件时,空内容对于SAX来说并不令人满意-解析器-我敢打赌你的看起来更好:)。
尝试一下,不要忘了咨询Maven参考,因为我对文件夹结构等没有太深的了解。)
是的-您应该可以右键单击pom.xml
,选择run AS
,例如选择Maven install
(对应于mvn install
)或定义要在其下处理的阶段Maven build...
另外,您应该能够为Maven创建新的启动配置,并将其指向Base directory:
您的pom.xml
住所。
注意:Afaik您需要在Eclipse中安装M2-Plugin才能与Maven一起使用(我对这个有趣的工具不了解很多,但是我在这里有一个Eclipse Juno,它能够构建在“简单的Java应用程序”项目中手动创建的Maven项目。 )。
注意:如果您只需要依赖项并使用Maven作为“帮助器”来下载它们,则可以始终从大多数远程存储库手动下载Jar,例如在这里:http : //mvnrepository.com/search?q=spring
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句