Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多少倍;“Eclipse项目”;对于一个实际的开发项目来说,是否被认为过于过度?_Java_Eclipse - Fatal编程技术网

Java 多少倍;“Eclipse项目”;对于一个实际的开发项目来说,是否被认为过于过度?

Java 多少倍;“Eclipse项目”;对于一个实际的开发项目来说,是否被认为过于过度?,java,eclipse,Java,Eclipse,我目前正在从事一个项目,该项目包含许多不同的Eclipse项目,它们相互引用以组成一个大型项目。开发人员是否应该问自己是否应该重新考虑开发项目的结构 注意:我的项目目前包含25多个不同的Eclipse项目。我的一般经验是,我会为每个可重用组件创建一个新项目。例如,如果我有一些可以打包的独立功能,比如说一个jar,我会创建一个新项目,这样我就可以独立地构建、打包和分发组件 此外,如果有某些项目不需要频繁更改,您可以仅在需要时构建它们,并在eclipse中保持它们“关闭”,以节省索引等方面的时间。即

我目前正在从事一个项目,该项目包含许多不同的Eclipse项目,它们相互引用以组成一个大型项目。开发人员是否应该问自己是否应该重新考虑开发项目的结构


注意:我的项目目前包含25多个不同的Eclipse项目。

我的一般经验是,我会为每个可重用组件创建一个新项目。例如,如果我有一些可以打包的独立功能,比如说一个jar,我会创建一个新项目,这样我就可以独立地构建、打包和分发组件


此外,如果有某些项目不需要频繁更改,您可以仅在需要时构建它们,并在eclipse中保持它们“关闭”,以节省索引等方面的时间。即使您认为某个组件不可重用,只要它在逻辑/关注点方面与代码库的其余部分分离,那么只需将其分离出来就可以很好地为您服务。有时,看似特定的代码可能会在另一个项目或同一项目的未来版本中重用。

在以前的工作中,整个应用程序超过170个项目。虽然很少有必要在本地检查所有项目,但即使是我们范围内的30-40个项目,重新编制索引等也非常缓慢

是的。每个项目一个项目。如果您使用的是可重用项目,那么为了安全起见,请将它们放入库中。将不可重用的项目分解成包,这就是它们的用途。

为不经常使用的项目创建JAR。这将大大减少混乱。如果您经常处理所有项目,那么您可以将目标添加到构建中,为您创建相应的jar项目,这会将所有内容压缩为一个文件,然后您可以将其包含在类路径中。

编译时,项目通常会产生jar。因此,如果您的应用程序由潜在的可重用组件组成,那么可以为每个组件使用一个项目

我非常喜欢使用很多项目,我觉得这会“分解”超出我对软件包所能做的事情,并帮助我定位和导航

当然,如果您正在开发Eclipse插件,那么无论如何,一切都将是一个项目

我唯一要注意的是你的源代码管理,以及它处理项目间文件移动的能力。Subclipse一直在给我麻烦,或者是我的SVN服务器给了我麻烦

如果您的项目有那么多子项目或模块,需要它们来实际构建最终工件,那么现在是时候考虑使用Maven之类的工具并设置一个多模块项目了。它将a)允许您独立处理每个模块,而无需担心ide问题,并允许通过
mvn eclipse:eclipse
目标在您的ide(以及其他ide)中轻松设置。此外,在构建整个顶级项目时,maven将能够从您描述的依赖项列表中派生出需要以什么顺序构建哪些模块

还有一个l,它将在第6章中更详细地解释事情(一旦你掌握了基本知识)


这也将迫使您的项目不显式地绑定到Eclipse。能够独立于ide进行构建意味着任何Joe Schmoe都可以使用他/她需要的任何工具来轻松地使用您的代码库

见鬼,我们有100多个。项目不需要任何成本。

另一种方法是创建许多不同的工作区。单独工作区的好处是,您可以消除大量项目带来的一些视觉混乱/性能开销。您可以使用目标将所有项目放入存储库中,这样您就可以在每个工作区中引用它们。

这是一个很难回答的问题,从一个eclipse项目到每个类都有一个eclipse项目

我的底线是:

  • 你可以有太少的项目, 而且永远不要太多(当然要用) 自动化(例如mvn eclipse:eclipse)
  • 使用 -Declipse.useProjectReferences=true/false 使用maven切换工作区时 模式btw jar和项目 依赖关系
  • 使用mvn发布插件生成 连续发布(自动) (版本增加)
  • 多个项目为您提供 独立版本控制 非常重要。例如,一个开发人员可以使用新版本的 模块,而您仍然依赖 前一个和你在某个地方 点决定升级到较新的 版本(可能通过在pom.xml依赖项部分增加其版本)。或者在其他情况下,如果 项目包含您降级的错误 到它以前的版本
  • 多个项目让你思考 关于架构的更多信息 你只有包裹
  • 多个项目通常会导致 建筑问题更加明显 如果你只有一个项目。 有人想评论吗 这个
  • 你永远不知道你是否有计划 演变为OSGI/SOA/EDA 需要分离
  • 即使你100%确信你 项目将作为一个jar部署 在单个jvm中,它以一种旧的方式 仍然不会造成伤害(mvn组件 插件)具有多个eclipse 逻辑独立的项目 代码片段

  • 顺便说一句,我所从事的项目分为24个eclipse项目。

    其中一些是,但我想说的是,大约75%的项目本身是不可重用的。Ryan-请参阅第二段中我的回答。@neesh-我明白了。我应该说,它们在逻辑上没有分开。老实说,我不记得是170个还是270个项目,所以我在安全方面犯了错误。但是就像我说的,我们不需要所有的项目都在本地签出。哈哈,这太神奇了:为什么有这么多项目?他们有超过20门课吗?