1

我正在学习 Maven,我需要一些帮助才能开始。我使用 m2eclipse 插件 (Maven),我想生成一个像 Struts 2、Hibernate 3、MySQL 这样的项目。现在我只用原型创建一个简单的项目:maven-archetype-webapp

我需要添加哪些依赖项?

4

3 回答 3

3

现在我只用原型创建一个简单的项目:maven-archetype-webapp

我的建议是使用struts2-archetype-blank原型来引导您的 Struts 2 应用程序。您可以从 m2eclipse(通过向导)或命令行调用它。例如从命令行:

mvn archetype:generate -B \
                       -DgroupId=tutorial \
                       -DartifactId=tutorial \
                       -DarchetypeGroupId=org.apache.struts \
                       -DarchetypeArtifactId=struts2-archetype-blank \
                       -DarchetypeVersion=2.2.1

为 Hibernate 3 和 MySQL JDBC 驱动程序添加所需的依赖项。通常,有几种方法可以做到这一点:

  • 手动(通过<dependency>在 中添加元素pom.xml
  • 使用 m2eclipse 向导
    • 通过 pom 编辑器的依赖项选项卡
    • 通过右键单击您的项目,然后Maven > 添加依赖项
  • 通过 Eclipse 快速修复选项

使用m2eclipse 添加依赖项博客文章有一个屏幕截图展示了其中的一些。

无论您选择哪种解决方案,最后,您pom.xml至少应该声明以下部门:

<project>
  <dependencies>
    ...
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-core</artifactId>
      <version>2.2.1</version>
    </dependency>
    ...
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-core</artifactId>
      <version>3.3.2.GA</version>
    </dependency>
    <dependency>
      <groupId>javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>3.9.0.GA</version>
    </dependency>
    ...
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.13</version>
    </dependency>
  </dependencies>

</project>

如果你想使用最新版本的 Hibernate 工件,你必须在repositories元素下添加 JBoss 存储库,因为它们在 maven 中央存储库中不可用(抱歉让事情变得更复杂,但是,事情就是这样):

<project>
  <dependencies>
    ...
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-core</artifactId>
      <version>3.5.5-Final</version>
    </dependency>
    ...
  <dependencies>
  ...
  <repositories>
    <repository>
      <id>repository.jboss.org-public</id>
      <name>JBoss repository</name>
      <url>https://repository.jboss.org/nexus/content/groups/public</url>
    </repository>
  </repositories>
  ...
</project>
于 2010-09-13T14:23:12.673 回答
0

你只需要找到 struts 或任何依赖项并将它们放在你的 pom.xml 中。这里有一点关于依赖:

http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

于 2010-09-13T13:36:05.667 回答
0

Maven 中的原型用于为特定类型的项目创建简单的结构。基本上,它将创建pom.xml文件、使用 Maven 约定的目录结构以及一些简单的文件。一些原型将创建更复杂的结构,具体取决于它们相关的项目类型。

在您的情况下,MySQL 和 Hibernate 在 Maven 中没有特定信息,除了依赖项。所以最好的办法就是生成一个web结构,最终使用Struts Maven archetype(我没用过,所以无法判断这个archetype的质量好不好),然后加上足够的Hibernate / MySQL 驱动程序依赖项。

您可以使用MvnRepository站点来查找特定依赖项的groupIdartifactId或。version

对于您的关注,我建议org.hibernate:hibernate:3.xxmysql:mysql-connector-java库(使用runtimeJDBC 驱动程序的范围):

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate</artifactId>
    <version>3.1.3</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.13</version>
    <scope>runtime</scope>
</dependency>
于 2010-09-13T13:42:18.360 回答