Java maven和我的应用程序之间有什么联系?

Java maven和我的应用程序之间有什么联系?,java,architecture,maven,intellij-idea,Java,Architecture,Maven,Intellij Idea,我需要构建java项目。该项目应包括两个模块:域和web。 域模块包含所有实体、业务逻辑和hibernate集成。 web模块应依赖于域模块,并包含使用apache wicket的web应用程序。 我想知道maven的用法。 我应该使用maven创建项目和模块吗?如果是,怎么做? 什么样的原型与我的项目和模块相关? 什么是更好的经验-自己创建项目还是使用maven 我正在使用intellij 我假设你不需要服务器让其他人访问你的代码, 但是,您希望将maven/ant用于内部项目 组织/依赖项解

我需要构建java项目。该项目应包括两个模块:域和web。
域模块包含所有实体、业务逻辑和hibernate集成。
web模块应依赖于域模块,并包含使用apache wicket的web应用程序。
我想知道maven的用法。
我应该使用maven创建项目和模块吗?如果是,怎么做?
什么样的原型与我的项目和模块相关?
什么是更好的经验-自己创建项目还是使用maven

我正在使用intellij

我假设你不需要服务器让其他人访问你的代码, 但是,您希望将maven/ant用于内部项目 组织/依赖项解析/源组织

我应该使用maven创建项目和模块吗

是的,maven或ant对于任何具有外部依赖关系和构建/测试需求的非平凡Java或JavaEE项目都非常有用

如果是,怎么做

无论是ant还是maven,都可以让您轻松地设置一个独立于平台的“构建”文件,这样您就可以通过发出一个命令,而不是多次单击ide中的不同插件,轻松地解析依赖关系、构建jar可执行文件并按顺序运行单元测试您可以在eclipse中使用maven插件创建一个新的maven项目,或者,如您所建议的,通过运行常规mvn安装创建工件来实现这一点。

什么样的原型与我的项目和模块相关

要学习如何使用maven原型快速入门。 对于常规(简单)j2ee应用程序,请尝试maven archetype webapp。 还有一个j2ee原型

什么是更好的经验-自己创建项目还是使用maven

建立maven项目的简单、三步、稳健的方法:

1) 使用maven原型创建和设置“hello world”项目

2) 将maven项目作为java项目导入ide

3) 编辑/优化/修复IDE中的代码,但使用maven构建和测试整个应用程序

更新:外部web框架

创建面向wicket(或gwt或任何其他框架)的web应用程序将 最好遵循与框架本身相关的特定教程。为了添加框架库,只需像这样将maven信息粘贴到pom.xml中,然后运行“mvn install”命令:

<dependency>
    <groupId>org.apache.wicket</groupId>
    <artifactId>wicket-core</artifactId>
    <version>1.5.3</version>
</dependency>

org.apache.wicket
导叶芯
1.5.3

我建议您使用maven。我使用maven的原因如下:

  • IDE不可知论者。您可以使用idea、eclipse或其他ID
  • 依赖关系管理
  • 强大的插件系统
  • 您可以手动创建3个maven模块

  • app.parent
    带有
    pom
    包装且无父项
  • app.domain
    jar
    打包和
    app.parent
    parent
  • app.web
    带有
    war
    包装和
    app.parent
    parent

  • 并将
    app.parent
    导入idea。

    同时签出Wicket快速入门Maven原型创建页面

    谢谢!关于你的三步建议,我是否应该使用maven创建项目和两个模块?为了支持hybernate和wicket,我需要哪种原型?j2ee原型可能是一个好的开始——如果您了解maven的话。我认为您应该构建一个项目——如果您只保留两个不同的源文件夹,您可以稍后将其拆分。过早地构建单独的mvn项目会降低您的编码速度。如何或在哪里学习创建这3个maven模块的语法?