Maven - NetBeans
NetBeans 6.7 和更高版本具有对 Maven 的内置支持。 对于以前的版本,插件管理器中提供了 Maven 插件。 在此示例中,我们使用的是 NetBeans 6.9。
下面列出了 NetBeans 的一些功能 −
您可以从 NetBeans 运行 Maven 目标。
您可以使用 NetBeans 自己的控制台查看 Maven 命令的输出。
您可以使用 IDE 更新 maven 依赖项。
您可以从 NetBeans 中启动 Maven 构建。
NetBeans 根据 Maven 的 pom.xml 自动进行依赖管理。
NetBeans 从其工作区解析 Maven 依赖项,而无需安装到本地 Maven 存储库(要求依赖项项目位于同一工作区)。
NetBeans 自动从远程 Maven 存储库下载所需的依赖项和源。
NetBeans 提供了用于创建新 Maven 项目 pom.xml 的向导。
NetBeans 提供了一个 Maven 存储库浏览器,使您能够查看本地存储库和注册的外部 Maven 存储库。
以下示例将帮助您利用集成 NetBeans 和 Maven 的优势。
在 NetBeans 中打开一个 maven 项目
打开 NetBeans。
选择 File Menu > Open Project 选项。
选择项目位置,项目是使用 Maven 创建的。 我们创建了一个 Java 项目 consumerBanking。 转到"创建 Java 项目"一章,了解如何使用 Maven 创建项目。
![在 NetBeans 中打开一个 Maven 项目。](https://www.w3ccoo.com/maven/images/nb_open_project.jpg)
现在,您可以在 NetBeans 中看到 maven 项目。 查看 consumerBanking 项目库和测试库。 您可以看到 NetBeans 已将 Maven 依赖项添加到其构建路径中。
![NetBeans 中的 Maven 项目。](https://www.w3ccoo.com/maven/images/nb_project_structure.jpg)
在 NetBeans 中构建一个 maven 项目
现在,是时候使用 NetBeans 的 maven 功能构建这个项目了。
- 右键单击 consumerBanking 项目以打开上下文菜单。
- 选择 Clean and Build 作为选项。
![Build a Maven project in NetBeans.](https://www.w3ccoo.com/maven/images/nb_build_options.jpg)
Maven 将开始构建项目。 您可以在 NetBeans 控制台中看到如下输出 −
NetBeans: Executing 'mvn.bat -Dnetbeans.execution = true clean install' NetBeans: JAVA_HOME = C:\Program Files\Java\jdk1.6.0_21 Scanning for projects... ------------------------------------------------------------------------ Building consumerBanking task-segment: [clean, install] ------------------------------------------------------------------------ [clean:clean] [resources:resources] [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent! skip non existing resourceDirectory C:\MVN\consumerBanking\src\main\resources [compiler:compile] Compiling 2 source files to C:\MVN\consumerBanking\target\classes [resources:testResources] [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent! skip non existing resourceDirectory C:\MVN\consumerBanking\src\test\resources [compiler:testCompile] Compiling 1 source file to C:\MVN\consumerBanking\target\test-classes [surefire:test] Surefire report directory: C:\MVN\consumerBanking\target\surefire-reports ------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.companyname.bank.AppTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.023 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [jar:jar] Building jar: C:\MVN\consumerBanking\target\consumerBanking-1.0-SNAPSHOT.jar [install:install] Installing C:\MVN\consumerBanking\target\consumerBanking-1.0-SNAPSHOT.jar to C:\Users\GB3824\.m2\repository\com\companyname\bank\consumerBanking\ 1.0-SNAPSHOT\consumerBanking-1.0-SNAPSHOT.jar ------------------------------------------------------------------------ BUILD SUCCESSFUL ------------------------------------------------------------------------ Total time: 9 seconds Finished at: Thu Jul 19 12:57:28 IST 2012 Final Memory: 16M/85M ------------------------------------------------------------------------
在 NetBeans 中运行应用程序
现在,右键单击 App.java。 选择运行文件作为选项。 您将在 NetBeans 控制台中看到结果。
NetBeans: Executing 'mvn.bat -Dexec.classpathScope = runtime -Dexec.args = -classpath %classpath com.companyname.bank.App -Dexec.executable = C:\Program Files\Java\jdk1.6.0_21\bin\java.exe -Dnetbeans.execution = true process-classes org.codehaus.mojo:exec-maven-plugin:1.1.1:exec' NetBeans: JAVA_HOME = C:\Program Files\Java\jdk1.6.0_21 Scanning for projects... ------------------------------------------------------------------------ Building consumerBanking task-segment: [process-classes, org.codehaus.mojo:exec-maven-plugin:1.1.1:exec] ------------------------------------------------------------------------ [resources:resources] [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent! skip non existing resourceDirectory C:\MVN\consumerBanking\src\main\resources [compiler:compile] Nothing to compile - all classes are up to date [exec:exec] Hello World! ------------------------------------------------------------------------ BUILD SUCCESSFUL ------------------------------------------------------------------------ Total time: 1 second Finished at: Thu Jul 19 14:18:13 IST 2012 Final Memory: 7M/64M ------------------------------------------------------------------------