我必须构建一个在Java桌面上运行的GUI。我是Java的新手,我正在努力理解Maven最适合的东西。这是适合Maven的应用程序类型吗?有人可以给我一个100字的解释Maven基本上是什么?
答案 0 :(得分:4)
您肯定希望将Maven用于桌面应用。它非常适合构建所有类型的Java应用程序,我个人将它用于2个相当大的Swing应用程序。简而言之,Maven为您提供以下内容:
预定义的项目目录结构(非常非常有帮助)
项目生命周期(清理,编译,打包,安装,测试)
依赖关系管理(您只声明在项目中使用的库,并且maven为您提取它们)
许多插件基本上可以完成所有事情 - 在代码上运行静态分析工具或更新数据库架构
Maven基本上是由“约定优于配置”驱动的 - 理所当然的默认设置可以节省你时间来找出(可能)更糟糕的设置,然后maven作者选择了。我衷心地建议你看一下Maven书的first chapter(这只是一个简短的概述让你上瘾)。
答案 1 :(得分:3)
简而言之,是的,Maven可能是合适的。
Maven是一种构建工具,它更喜欢约定优于配置(所以只要将它们放在标准位置,它就会找出代码和测试的位置)。它还进行依赖管理 - 不再将jar检入lib目录。告诉maven你的依赖是什么,它会找到它们并在编译中使用它们。
Maven并非特定于网络应用。它可以以多种不同的方式包装(罐子,战争,耳朵等)。如果您选择的不是特定于网络的包装(即jar),那么您将能够很好地构建您的应用程序。
答案 2 :(得分:0)
我使用Maven和复杂的webapp - Geoserver和桌面应用程序 - NEST。两者都受益于Maven提供的构建管理基础架构。如果您使用过基于源的Linux发行版,例如Gentoo然后Maven相当于Portage。初始构建和设置具有依赖关系的存储库需要一段时间,但是一旦一切就绪,构建过程就会变得高度自动化。