【发布时间】:2011-03-05 22:34:02
【问题描述】:
我尝试通过从 Eclipse 中选择 Archtype Web Application 创建新的 maven 项目来创建项目。但是当我为项目源文件夹创建一个新的 java 类时,它在包中不包含 packagecge 名称,并且源文件夹包含在类路径中。那么我的设置是否有问题,或者为什么 Eclipse 不自动将包添加到新创建的类?
【问题讨论】:
我尝试通过从 Eclipse 中选择 Archtype Web Application 创建新的 maven 项目来创建项目。但是当我为项目源文件夹创建一个新的 java 类时,它在包中不包含 packagecge 名称,并且源文件夹包含在类路径中。那么我的设置是否有问题,或者为什么 Eclipse 不自动将包添加到新创建的类?
【问题讨论】:
这就是我的工作:
<dependency> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> <version>2.5.6.SEC01</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>2.5.6.SEC01</version> </dependency>
【讨论】:
最简单的方法是使用@Stephen 建议的Spring Tool Suite,这是用于Spring 开发的Eclipse 捆绑版本。它封装了 Spring IDE、M2Eclipse 等插件,并为 Spring 项目(通过 New > Project...)提供自定义 Project 模板。这为您提供了一个完全配置的项目。
Maven webapp 原型允许获得类似的结果,但涉及更多手动步骤:您必须添加 src/main/java,创建基础包并手动添加 Spring 依赖项(所以不,您的设置没有什么特别的问题)。
【讨论】:
在 Spring Tool Suite (STS) 中,您可以试试这个。创建一个 Maven 项目。您可以将 pom.xml 依赖项添加到您可能需要的任何 Spring 库中。例如:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.5.RELEASE</version>
<type>pom</type>
<scope>compile</scope>
</dependency>
项目创建后,在Package Explorer中右键单击,选择Spring Tools -> Add Spring Project Nature。等等,你应该有一个 Maven/Spring 项目。
【讨论】:
来自new project creation man page:
然后它会要求您输入 groupId、artifactId 和要创建的项目版本以及源的基本包的值。
[INFO] artifact org.apache.maven.archetypes:maven-archetype-quickstart: checking for updates from maven-archetype-quickstart-repo
Downloading: http://repo1.maven.org/maven2/org/apache/maven/archetypes/maven-archetype-quickstart/1.0/maven-archetype-quickstart-1.0.jar
4K downloaded
Define value for groupId: : com.company
Define value for artifactId: : project
Define value for version: : 1.0
Define value for package: : com.company.project
Confirm properties configuration:
groupId: com.company
artifactId: project
version: 1.0
package: com.company.project
Y: :
如果设置了基础包,则新创建的类应该在该包下。
源文件夹是否包含空的“com.company.project”包?
【讨论】:
SpringSource 人员开发了一个基于 Eclipse 的 Spring Tool Suite 用于开发 Spring 项目。我从未使用过 STS ...但如果您正在开始一个新项目,这可能是试一试的好时机。
【讨论】: