2013-12-18 92 views
0

我从Eclipse切换到IntelliJ Idea,并在部署时出现了一些自制的猜测问题。IntelliJ Idea和Java EE开发/部署

在Eclipse中通常我(main-)项目包含子项目4:

  • EAR
  • EJB
  • 共享(与JPA实体,JPA刻面等等...)
  • WEB (JSF,REST)

我知道JetBrains的组织方式是另一种。所以我创建一个新的项目并检查我需要的所有需要​​的技术(例如EJB,Web,CDI)。当我尝试部署项目时,存在cdi ambigious错误,因为该类位于EJB工件中,也位于Web工件中。所以我愚蠢的想法是,从Web工件中删除编译输出,但现在不再可以在Web-Project中访问这些文件(CNFE在调用时)。

那么请问,如果我试图用EJB,JPA,Web(JSF,REST)开发一个项目,那么正确的做法是什么。这可能不那么困难,我疯了;)。谢谢!

回答

1

Guten Abend,

我想你应该允许从命令行构建你的项目。我在大型项目中使用IntelliJ,并且始终确保我可以使用mvn clean install从命令行构建该项目,因为它有时需要并且不依赖于IDE。我建议您将项目划分为您提及的子项目,并为每个项目制作pom.xml,并将源代码放入源代码控制中,例如颠覆。然后,你将能够从Subversion检出项目,并且它会在IntelliJ中整齐地加载,如果你已经完全配置好了。

所以,如果您还没有,请考虑为您的项目使用Maven和Subversion(或其他VCS),它会简化您的工作。

如果您提供有关特定文件和特定错误消息的更多详细信息,我们可以帮助您继续前进,这些是我的一般建议。

我在IntelliJ中的设置从几个子项目构建一个大项目如下所示。

enter image description here

当完成这样,我就可以重建个别子项目,而无需被迫重建仅仅因为一个小的变化的整个事情。我也可以使用maven命令构建一切命令行mvn clean install

+1

感谢您的回答。但是这意味着,每个项目都需要单个IntelliJ实例? – VWeber

+0

@VWeber您可以将子项目用于项目,以便许多'pom.xml'为您构建一个大型项目。我正在更新答案,以便您可以更详细地查看。我认为能够使用命令'mvn clean install'来构建所有的东西是很好的,这个命令也可以在IntelliJ中完成,但是只建立被修改的子项目会更有效,构建一个大型项目可能需要几分钟时间你只想重建你改变的东西。 –

+1

感谢您的帮助。 – VWeber