NetBeans RCP上的Hello World Maven


让我们使用Maven来创建一个简单的NetBeans RCP应用程序。我们将创建一个新的应用程序,添加一个模块,并为其添加一个Action。在这个过程中,你会学到在NetBeans RCP上设置Maven应用程序所需的所有基本知识。

做好以下工作。

  mvn -DarchetypeVersion=1.5   
-Darchetype.interactive=false
-DgroupId=com.mycompany
-DarchetypeArtifactId=netbeans-platform-app-archetype
-DarchetypeRepository= http://repository.codehaus.org/
-Dversion=1.0-SNAPSHOT
-DarchetypeGroupId=org.codehaus. mojo.archetypes
-Dpackage=com.mycompany.mavenplatformapp
-DartifactId=mavenPlatformApp
--batch-mode org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-4:generation

导航到你全新的 "mavenPlatformApp "文件夹。然后

mvn reactor:make -Dmake.folders=application

导航到全新的 "application "文件夹。然后。

mvn nbm:run-platform

你现在看到一个闪屏,NetBeans平台启动了,其中包括一组默认模块。

导航回 "mavenPlatformApp "文件夹。然后。

  mvn -DarchetypeVersion=1.4   
-Darchetype.interactive=false
-DgroupId=com.mycompany
-DarchetypeArtifactId=nbm-archetype
-DarchetypeRepository= http://repository.codehaus.org/
-Dversion=1.0-SNAPSHOT
-DarchetypeGroupId=org.codehaus.mojo。 archetypes
-Dpackage=com.mycompany.mavenplatformmodulea
-DartifactId=mavenPlatformModuleA
--batch-mode org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-4:generation

现在看看上述生成的源结构。

现在让我们在我们的模块中创建一个新的Action。进入 "java/com/mycompany/mavenplatformmodulea "目录,添加一个名为 "HelloWorldAction.java "的文件,内容如下。

  包com.mycompany.mavenplatformmodulea; 

导入java.awt.event.ActionEvent;
导入java.awt.event.ActionListener;
导入org.openide.DialogDisplayer;
导入org.openide.

public class HelloWorldAction implements ActionListener {

@Override
public void actionPerformed(ActionEvent e) {
NotifyDescriptor d = new NotifyDescriptor.Message("hello...");
DialogDisplayer.getDefault() 。

}

在 "layer.xml "文件中注册上述类,该文件在 "resources/com/mycompany/mavenplatformmodulea"。在该文件中,在<filesystem>标签之间放入以下内容。

  <文件夹名称="Actions">  
<文件夹名称="Window">
<文件名称="com-mycompany-mavenplatformmodulea-HelloWorldAction.instance">
<attr名称="delegate" newvalue="com.mycompany. mavenplatformmodulea.HelloWorldAction"/>
<attr name="displayName" bundlevalue="com.mycompany.mavenplatformmodulea.Bundle#CTL_HelloWorldAction"/>
<attr name="instanceCreate" methodvalue="org. openide.awt.Actions.alwaysEnabled"/>
</file>
</folder>
</folder>
<文件夹名称="菜单">
<文件夹名称="窗口">
<文件名称="HelloWorldAction. shadow">
<attr name="originalFile" stringvalue="Actions/Window/com-mycompany-mavenplatformmodulea-HelloWorldAction.instance"/>
</file>
</folder>
</folder>

在上述同一文件夹中的 "Bundle.properties "文件中,添加一个键/值对来设置Action的显示名称。

CTL_HelloWorldAction=Hello World

编辑 "mavenPlatformModuleA "文件夹中的 "pom.xml",添加以下依赖,因为你在上面的Action中使用了NetBeans Dialogs API。

  <dependency>  
<groupId>org.netbeans. api</groupId>
<artifactId>org-openide-dialogs</artifactId>
<version>RELEASE691</version>
</dependency>

导航到 "mavenPlatformModuleA "文件夹并按如下步骤安装。

mvn install

现在我们把新模块注册到应用程序中。导航至 "application "文件夹,打开其中的 "pom.xml"。在应用程序中为该模块添加一个依赖关系。

  <dependency>  
<groupId>com.mycompany</groupId>
<artifactId>mavenPlatformModuleA</artifactId>
<版本>1.0-SNAPSHOT</version>
</dependency>

导航到 "mavenPlatformApp "文件夹,然后构建该应用程序。

mvn reactor:make -Dmake.folders=application

现在,应用程序已经构建完毕,导航到 "application "文件夹并运行它。

mvn nbm:run-platform

应用程序再次启动,这次包括你的新动作。

点击菜单项,你会看到你的小对话框,上面有一条信息。

你的 "hello world "Maven应用程序现在已经完成。

注意:以上说明是基于文件 从Maven原型创建NetBeans平台应用程序