hadoop-common-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Hadoop Wiki] Update of "HadoopUnderIDEA" by SteveLoughran
Date Fri, 27 Jun 2008 14:48:13 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Hadoop Wiki" for change notification.

The following page has been changed by SteveLoughran:

The comment on the change is:
Page on working with Hadoop under IntelliJ IDEA

New page:
= Building/Testing Hadoop under IDEA =

Hadoop builds with Ant, but you can set it up to work under IDEA for testing and some iterative
development. This does not take away the need to run Ant; you just run it side by side.

== Before you begin ==
 * Be on Java6. That's where Hadoop is going.
 * Have the build work on the command line.

== Building ==

 * create and edit a build.properties file; add the line

 * Do a command line build first, to set up all the output dirs

== Creating a new module ==
Create a new IDEA module for Hadoop.

=== Source folders ===

 * Even if you are not working on an area, adding it to the source tree makes refactoring
and class/method use queries more reliable.
 * Everything under {{{build/}}} goes away on a clean build, and needs to be picked up again
by resynchronizing IDEA (if it is not automatic)
 * By default, the webapp metadata goes into {{{build/webapps}}}, which is not the right place
to be picked up by the IDE. Moving it under {{{build/resources/}}} is needed to place it somewhere

=== test source directories ===

Exclude stuff under there that you do not need.

=== Build Paths ===
Set these to the full path of where Hadoop's Ant build sticks things, such as :
 * output:  {{{/home/user/hadoop-core/build/classes}}}
 * Test output {{{/home/user/hadoop-core/build/test/classes}}}

=== Libraries ===
 * everything in the {{{lib/}}} directory.
 * If you have global libraries set up for Log4J, JUnit and Jetty (for example), use them
and omit the versions in {{{lib/}}}. Do keep in sync with library versions, especially that
of Jetty.

== Setting up a test run ==

To run JUnit tests under the IDE, create a new test configuration pointing to the chosen tests.
 * Use the classpath and JDK of the Hadoop module.
 * Select the package, class or method containing the chosen tests
 * VM Parameters: you must set up the logging directory
JRockit users: consider editing {{{conf/log4j.properties}}} to
log4j.appender.console.layout.ConversionPattern=%-4r %-5p %c %x - %m%n

This may seem odd, but it eliminated deadlocks in the logging.

View raw message