lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steven Rowe (JIRA)" <>
Subject [jira] Commented: (LUCENE-2611) IntelliJ IDEA and Eclipse setup
Date Mon, 14 Feb 2011 14:54:57 GMT


Steven Rowe commented on LUCENE-2611:

bq. For some reason it was missed that javac should be invoked with "-encoding utf-8" options.

Thanks for bringing this up - I hadn't realized that javac defaulted to the platform encoding.
 I've committed this part of your patch to both trunk and branch_3x.

bq. I also included a build.xml tweak that overwrites the .iml files

I didn't commit this part of your patch, because I don't think it's a good idea to only overwrite
the {{*.iml}} files, and not also the {{.idea/*.xml}} files, since the two have to be in sync,
e.g. when there are structural changes.  

Right now there is a {{clean-idea}} task that can be used to serve this function.  The {{.idea}}
directory is where IntelliJ stores stuff like shelved changes, and it would be really bad
to automatically delete that stuff as part of updating IntelliJ configuration, so that directory
is never automatically overwritten.

One technical note about this part of your patch: 
<copy todir=".">
  <fileset dir="dev-tools/idea">
    <exclude name="Intellij-Lucene-Codestyle.xml"/>
+   <exclude name="*.iml"/>
+ <copy todir="." overwrite="true">
+   <fileset dir="dev-tools/idea">
+     <include name="*.iml"/>
+   </fileset>
+ </copy>

{{*.iml}} does not refer to all {{.iml}} files in all sub-directories, but rather only those
in the top-level directory.  You want {{**/*.iml}} to catch all of them recursively.

> IntelliJ IDEA and Eclipse setup
> -------------------------------
>                 Key: LUCENE-2611
>                 URL:
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Build
>    Affects Versions: 3.1, 4.0
>            Reporter: Steven Rowe
>            Priority: Minor
>             Fix For: 3.1, 4.0
>         Attachments: LUCENE-2611-branch-3x-part2.patch, LUCENE-2611-branch-3x.patch,
LUCENE-2611-branch-3x.patch, LUCENE-2611-branch-3x.patch, LUCENE-2611-branch-3x.patch, LUCENE-2611-branch-3x.patch,
LUCENE-2611-part2.patch, LUCENE-2611.patch, LUCENE-2611.patch, LUCENE-2611.patch, LUCENE-2611.patch,
LUCENE-2611.patch, LUCENE-2611.patch, LUCENE-2611.patch, LUCENE-2611.patch, LUCENE-2611_eclipse.patch,
LUCENE-2611_mkdir.patch, LUCENE-2611_test.patch, LUCENE-2611_test.patch, LUCENE-2611_test.patch,
LUCENE-2611_test.patch, LUCENE-2611_test_2.patch, utf8.patch
> Setting up Lucene/Solr in IntelliJ IDEA or Eclipse can be time-consuming.
> The attached patches add a new top level directory {{dev-tools/}} with sub-dirs {{idea/}}
and {{eclipse/}} containing basic setup files for trunk, as well as top-level ant targets
named "idea" and "eclipse" that copy these files into the proper locations.  This arrangement
avoids the messiness attendant to in-place project configuration files directly checked into
source control.
> The IDEA configuration includes modules for Lucene and Solr, each Lucene and Solr contrib,
and each analysis module.  A JUnit run configuration per module is included.
> The Eclipse configuration includes a source entry for each source/test/resource location
and classpath setup: a library entry for each jar.
> For IDEA, once {{ant idea}} has been run, the only configuration that must be performed
manually is configuring the project-level JDK.  For Eclipse, once {{ant eclipse}} has been
run, the user has to refresh the project (right-click on the project and choose Refresh).
> If these patches is committed, Subversion svn:ignore properties should be added/modified
to ignore the destination IDEA and Eclipse configuration locations.
> Iam Jambour has written up on the Lucene wiki a detailed set of instructions for applying
the 3.X branch patch for IDEA:

This message is automatically generated by JIRA.
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message