`

琴瑟和鸣--让同一项目在NetBeans和Eclipse平台下和谐相处,协同开发

    博客分类:
  • Java
阅读更多

在Java IDE世界里,Eclipse和NetBeans是平台主导者。无论是CodeGear的JBuilder 2007,BEA 的Workshop Studio,还是IBM 的Websphere Studio,因为都是建立的在Eclipse平台基础上的,所以缺省的构建(Build)方式都是Eclipse Native的。同时,Eclipse支持External Tools方式,其中有Ant Build方式。这样为采用其它IDE建立的项目搭建了一个沟通的桥梁。

在一个开发小组中,本应该要统一开发环境。但是有时候,采用NetBeans 平台加上EnterPack和Visual Web Pack之后,可以简化SOA的Web Services和BPEL以及JSF 2.0的开发。NetBeans本身完全采用ant 方式管理工程。这样我们可以建立一个在NetBeans和Eclipse共享的项目。

步骤如下:

1.在NetBeans下建立项目

首先在NetBeans下建立一个叫HelloWorld的示例项目。在NetBeans的项目视图和文件视图如图1和图所示。

在NetBeans的项目中一般至少包含了Source Packages,Test Packages,Libraries和Test Libraries四个目录。其结构图如如图1。

 

图1 NetBeans项目结构图

在NetBeans的文件结构至少包含nbproject, src和test三个子目录。文件结构图如图2所示。
在项目的文件夹下面有ant的标准构建文件build.xml,其内容如表所示。
<? xml version="1.0" encoding="UTF-8" ?>
<!--  You may freely edit this file. See commented blocks below for  -->
<!--  some examples of how to customize the build.  -->
<!--  (If you delete it and reopen the project it will be recreated.)  -->
< project  name ="HelloWorld"  default ="default"  basedir ="." >
    
< description > Builds, tests, and runs the project HelloWorld. </ description >
    
< import  file ="nbproject/build-impl.xml" />
    
<!--

    There exist several targets which are by default empty and which can be 
    used for execution of your tasks. These targets are usually executed 
    before and after some main targets. They are: 

      -pre-init:                 called before initialization of project properties
      -post-init:                called after initialization of project properties
      -pre-compile:              called before javac compilation
      -post-compile:             called after javac compilation
      -pre-compile-single:       called before javac compilation of single file
      -post-compile-single:      called after javac compilation of single file
      -pre-compile-test:         called before javac compilation of JUnit tests
      -post-compile-test:        called after javac compilation of JUnit tests
      -pre-compile-test-single:  called before javac compilation of single JUnit test
      -post-compile-test-single: called after javac compilation of single JUunit test
      -pre-jar:                  called before JAR building
      -post-jar:                 called after JAR building
      -post-clean:               called after cleaning build products

    (Targets beginning with '-' are not intended to be called on their own.)

    Example of inserting an obfuscator after compilation could look like this:

        <target name="-post-compile">
            <obfuscate>
                <fileset dir="${build.classes.dir}"/>
            </obfuscate>
        </target>

    For list of available properties check the imported 
    nbproject/build-impl.xml file. 


    Another way to customize the build is by overriding existing main targets.
    The targets of interest are: 

      -init-macrodef-javac:     defines macro for javac compilation
      -init-macrodef-junit:     defines macro for junit execution
      -init-macrodef-debug:     defines macro for class debugging
      -init-macrodef-java:      defines macro for class execution
      -do-jar-with-manifest:    JAR building (if you are using a manifest)
      -do-jar-without-manifest: JAR building (if you are not using a manifest)
      run:                      execution of project 
      -javadoc-build:           Javadoc generation
      test-report:              JUnit report generation

    An example of overriding the target for project execution could look like this:

        <target name="run" depends="HelloWorld-impl.jar">
            <exec dir="bin" executable="launcher.exe">
                <arg file="${dist.jar}"/>
            </exec>
        </target>

    Notice that the overridden target depends on the jar target and not only on 
    the compile target as the regular run target does. Again, for a list of available 
    properties which you can use, check the target you are overriding in the
    nbproject/build-impl.xml file. 

    
-->
</ project >

 

在列表中可以看出,有这样的描述

 

import file="nbproject/build-impl.xml"/

 

主要的内容实际上在nbproject/build-impl.xml里。

 

图2 NetBeans文件结构图

那么构建过后的class文件和jar到底放置在什么地方。

切换到project视图,点击右键,在弹出菜单选择“Build Project”(如图3所示),对项目进行构建。

 

图3

再切换到File视图,将会发现多出了build和dist及其子文件夹。如图4所示。

 

图4

原来,NetBeans构建过后,将产生的类放置到了build文件夹的classes下面,将生成的jar包放置到了dist下面。
通过搜索,build.classes.dir属性和dist.dir是在project.properties文件里定义的。为了将项目引入到eclipse作准备,修改为:

 

build.classes.dir=${build.dir}/

dist.dir=bin

 

自此,在HelloWorld项目在NetBeans下已经完工。

2.将HelloWorld Project 引入到Eclipse

打开Eclipse,从菜单"File->New"选择,将弹出项目向导。在向导中选择"Java 项目"。如图5所示。

 

 

图5

点击下一步,在新的向导页中,选择"从现有资源创建项目"选项,然后再点击“下一步”。如图6所示。

 

图6

这时,调整缺省输出目录,然后点击“完成”按钮。

 

图7

至此,NetBeans下的项目完整地引入到了Eclipse平台里。像其它的Eclipse项目一样进行操作了。
分享到:
评论
6 楼 lewhwa 2007-01-02  
zzsczz 写道
似乎...用eclipse重构netbeans的项目是...不允许滴?

项目是自己的项目,采用Eclipse和NetBeans完全是由开发者决定的。 任何一个软件的license也不会对开发者和用户作限制吧!:)
5 楼 zzsczz 2007-01-02  
似乎...用eclipse重构netbeans的项目是...不允许滴?
4 楼 lewhwa 2007-01-02  
zzsczz 写道
有违法的可能吗?

NetBeans和Eclipse都是开源的,无违法之忧。
3 楼 lewhwa 2007-01-02  
lighter 写道
有意思的帖子.
以前用过JBuilder,现在一直在用eclipse,习惯了,快捷键也都比较熟悉了
NetBeans没有用过...

在开发SOA的Web Services和BPEL,以及开发JSF 2.0时,使用NetBeans很方便的。
2 楼 zzsczz 2007-01-02  
有违法的可能吗?
1 楼 lighter 2007-01-01  
有意思的帖子.
以前用过JBuilder,现在一直在用eclipse,习惯了,快捷键也都比较熟悉了
NetBeans没有用过...

相关推荐

    eclipse和NetBeans的项目相互转换.

    本文将详细介绍如何在Eclipse和NetBeans之间进行项目转换,以实现跨平台的项目兼容性。 #### Eclipse项目转换至NetBeans **步骤一:准备工作** 确保Eclipse项目位于非中文路径下,这是为了避免字符编码问题导致的...

    Apache-NetBeans-11.2-bin-windows-x64.exe

    Apache-NetBeans-11.2-bin-windows-x64.exeApache-NetBeans-11.2-bin-windows-x64.exeApache-NetBeans-11.2-bin-windows-x64.exeApache-NetBeans-11.2-bin-windows-x64.exeApache-NetBeans-11.2-bin-windows-x64....

    Atom-Atom-Netbeans-Theme,netbeans的atom风格主题。对mirkobrombin/atom的贡献.zip

    Atom-Atom-Netbeans-Theme 是一个专门为 NetBeans IDE 设计的主题,它的灵感来源于流行的文本编辑器 Atom。这个主题旨在为 NetBeans 用户提供一个类似 Atom 的界面体验,从而带来更现代、简洁且高效的编码环境。它由...

    NetBeans仿eclipse风格(8.x版本用)

    NetBeans在Eclipse风格下,会优化项目结构的显示和管理,使得项目构建、运行和调试的操作流程更加一致。 6. **插件兼容性**:尽管NetBeans和Eclipse的插件系统有所不同,但在Eclipse风格下,NetBeans可能会提供一些...

    Android学习笔记之开发环境搭建(Eclipse和NetBeans)

    本文将详细介绍如何在Eclipse和NetBeans中设置Android开发环境,以便进行应用程序的编写和调试。 首先,我们关注的是Eclipse环境的搭建。Eclipse是一款强大的集成开发环境(IDE),广泛用于Java和Android应用开发。...

    netbeans-8.2-windows.exe

    netbeans-8.2-windows.exe 全能开发工具

    netbeans仿eclipse 的字体和颜色主题

    netbeans的颜色和字体配置一直不如eclipse要好一些,这款修改后的netbeans主题很像Eclips Vibrant Ink。 使用方法:netbeans中工具-》选项—》字体和颜色-&gt;导入zip文件就可以了。最好配套Monaco字体。

    netbeans-8.2,Linux,x64

    - 对于C++开发者,NetBeans提供了对GCC编译器的支持,可以在Linux环境下进行C/C++项目的开发。 3. **安装与配置**: - 解压缩"Netbeans.8.2-cpp-linux-x64"文件,里面包含了安装所需的全部内容。 - 使用终端命令...

    Apache-NetBeans-12.5-bin-windows-x64.exe

    NetBeans 是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于 Java 等语言的开发,适用于Windows系统。

    netbeans-8.2 windows-x64

    NetBeans包括开源的开发环境和应用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeans IDE已经支持PHP、Ruby、JavaScript、Groovy、Grails和C/C++等开发语言。

    在NetBeans,Eclipse,JBuilder中搭建SonyEricsson模拟器过程文件

    为了帮助开发者更好地理解和掌握在NetBeans、Eclipse和JBuilder等集成开发环境(IDE)中设置索尼爱立信模拟器的方法,本文将详细介绍具体的步骤以及相关的功能特性。 #### 准备工作 在开始之前,确保已安装以下软件...

    Derivada-en-Java-master_netbeans_derivatives_

    标题"Derivada-en-Java-master_netbeans_derivatives_"表明这是一个关于使用Java语言在NetBeans集成开发环境下实现求导功能的项目。这个项目可能包含了一系列的Java源代码,旨在帮助开发者理解和实现数值求导的方法...

    netbeans项目导入eclipse的方法.pdf

    然而,在某些团队环境中,可能会存在使用不同IDE的情况,这就需要一种方法来让在NetBeans中创建的项目能够在Eclipse中顺利运行。 #### 方法概述 本文将详细介绍如何将一个在NetBeans中创建的项目导入到Eclipse中的...

    netbeans-7.3-javase-windows

    描述“netbeans-7.3-javase-windows”简洁明了,强调了这是适用于Windows平台的Java SE开发工具。这意味着用户可以在Windows操作系统上利用这个IDE进行Java应用程序的开发,包括桌面应用、Web应用或移动应用(使用...

    Eclipse下搭建Grails项目

    注意,尽管Eclipse对Grails的支持相比IntelliJ IDEA和NetBeans可能稍显不足,但通过Groovy Eclipse插件的配置,开发者依然能在Eclipse中高效地进行Grails开发。不断更新插件和学习最佳实践将有助于提升开发体验。

    Hotel-Management-Project-in-Java-and-Netbeans.rar_pool tomcat_pr

    【标题】"Hotel-Management-Project-in-Java-and-Netbeans.rar_pool tomcat_pr" 提供了一个关于使用Java和NetBeans开发的酒店管理系统的项目。这个项目的核心是通过Java编程语言实现酒店业务流程的自动化,并结合了...

    (编辑整理) NetBeans vs Eclipse 之性能参数对比.rar

    NetBeans和Eclipse是两款非常流行的Java集成开发环境(IDE),它们各自都有独特的特性和优势。本文将深入探讨NetBeans与Eclipse在性能参数上的对比,帮助开发者更好地理解这两款工具的性能差异。 NetBeans是由...

    netbeans-8.0-linux

    在Linux环境下,NetBeans 8.0 提供了良好的系统集成,它可以无缝地与Linux的文件系统、版本控制系统(如Git、SVN)和其他开发工具协同工作。此外,它还支持GNOME和KDE桌面环境,适应各种Linux发行版的用户界面。 该...

    Apache-NetBeans-12.1-bin-windows-x64.exe

    Apache NetBeans 12.1 was released on September 1, 2020.

Global site tag (gtag.js) - Google Analytics