Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Setting up an Eclipse project to build CXF is pretty easy. There are three parts to it:

...

  • Checkstyle - we use checkstyle to make sure we have consistent code style as well as to find various types of bugs and other issues. httphttps://eclipse-cscheckstyle.sourceforge.netio/update
  • PMD - like Checkstyle, we use PMD to find potential programming problems in the code. Point the Eclipse auto-install thing at httphttps://pmd.sourceforgegithub.net/eclipseSubversion plugins - there are a couple of these to enable Subversion checkins/checkouts from within eclipse: http://subclipse.tigris.org/update_1.4.xio/

Panel

(info) While there exist Maven plug-ins for Eclipse, team developer experience has found using them with CXF problematic at best. We recommend importing the CXF source code as Eclipse projects as shown below and/or using Maven externally (i.e., from a command-line window) as discussed on the CXF build page.

To install the plugins:

  • Go to

    No Format
    
    Help -> Software updates -> Find and install
    
  • Select "Search for new features to install" and hit Next
  • For each of the above plugins, click on "New Remote Site", enter a name and the above URL.
  • Select the three new sites and click finish. It will search for the new plugins. Select them all and hit OK.

It will then download them and install them.

  • Eclipse Marketplace
    


  • On the Search tab, enter "Checkstyle" to search for it and install the "Checkstyle Plugin"
  • On the Search tab, enter "PMD" to search for PMD. There are two PMD plugins, install the "pmd-eclipse-plugin" 

Experimental Alternative: M2Eclipse

Some of us are starting to experiment with using M2Eclipse. See this page for instructions.

Creating a workspace

First check out CXF from Subversion.

To create a workspace, just run from the root directory of the CXF project (see the build page for more detailed information):

No Format

> mvn -Pfastinstall
> mvn -Psetup.eclipse  

OR

No Format

> mvn install -Pfastinstall -Psetup.eclipse

...

If you don't want the workspace there, you can run:

No Format

"mvn -Psetup.eclipse -Declipse.workspace.dir=path/to/workspace"

If you don't want the eclipse projects' output directory to be ./target directory (by default) but ./eclipse-classes, you can run:

No Format

"mvn -Psetup.eclipse -Pset.eclipse.output"

...

  • In eclipse, switch to the workspace you created above.
  • Go To:

    No Format
    
    File -> Import....
    


  • Select "Existing Projects into Workspace" and hit Next
  • Select root directory: enter the path to your trunk directory and hit Next.
  • Select all the subprojects and hit Finish. Eclipse will import and rebuild all the subprojects selected. This will take a while.

...

  1. Explicitly on the command line. When running eclipse:eclipse, add -Declipse.workspace=/home/dkulp/working/workspace
  2. Update your Maven ~/.m2/settings.xml to have a active profile that always sets these variables. Thus, whenever the eclipse plugin looks for it, it know where the workspace is. In settings.xml, do:

    Code Block
    
    ...
        <activeProfiles>
            <activeProfile>extra</activeProfile>
        </activeProfiles>
        <profiles>
            <profile>
                <id>extra</id>
                <properties>
                    <eclipse.workspace>/home/dkulp/working/workspace</eclipse.workspace>
    
                    <eclipse.workspace.dir>/home/dkulp/working/workspace</eclipse.workspace.dir>
                </properties>
            </profile>
        </profiles>
    ...
    

    By doing that, you can pretty much run eclipse:eclipse (or -Psetup.eclipse for cxf projects) at any point and it will always wire the new project to depend on the existing projects.

How Does This All Work, Anyway?

...