我有一个中等规模的项目分为3个模块:核心,插件(简而言之,它是一个解释层)和实现。有一些全局依赖项和模块特定的依赖项。有一个自定义ant目标用于生成javadoc,不包括实现(出于显而易见的原因)。它存储在公共在线SVN存储库中,因此需要独立于任何没有JRE的机器
现在我正在使用内置的NetBeans项目管理,这很糟糕,可能主要是因为项目管理系统不是为模块设计的。缺少全局库集(您可以导入特定于您的nb安装的库,但它不会更新),缺乏自动解析库依赖项(对项目的依赖意味着项目和它的依赖关系),缺乏独立的多项目格式化风格(与特定于配置文件的“全局选项”或单独设置和同步的模块特定选项相关联),以及其他因素使管理我的项目变得痛苦。
当我在尝试IDEA时,我喜欢的一件事就是项目管理。它接近我想要的,但像IDEA中的大多数东西都可以更简单。然而,IDE本身很糟糕(不值得讨论),所以我切换回NetBeans。 Maven看起来很糟糕,因为必须手动遍历文件结构general opinion。
那些可以存储在标准SVN存储库中 有限工具的更好的选项是非常容易用于1-3个开发人员,并且2-5个模块?它必须能够处理java,并且(在完美的世界中)与NetBeans集成。
答案 0 :(得分:3)
老实说,maven是你最好的选择。我不会敲你还没试过它。它往往是一种非常分裂的技术,但是那些喜欢它的人喜欢这个技术。如果你是一个喜欢在你最初设置它之后把你的手放在构建脚本/文件上的人,看起来你得到了你正在使用Netbeans的内置项目,它们在幕后生成一个ant build.xml,那么你应该尝试maven,看看会发生什么。
如果您使用的是netbeans,我不确定为什么您认为需要使用maven“遍历目录结构”。请参阅此屏幕截图,了解它的外观示例。你永远不会在文件系统上看到src / main / java或target /或任何东西(除非你需要)。 alt text http://netbeans.org/images_www/articles/68/javaee/mavenentapp/maven-projectswindow1.png
如果您使用maven多模块项目,您将获得Netbeans中正在寻找的模块化。如果你想要一个样本,去结账一个包含大量模块的开源项目并将其加载到Netbeans中并使用它:http://camel.apache.org/source.html