[ 
https://issues.apache.org/jira/browse/LUCENE-2611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12994323#comment-12994323
 ] 

Steven Rowe edited comment on LUCENE-2611 at 2/14/11 2:59 PM:
--------------------------------------------------------------

*edit*: escaped the {{\*}} metacharacter so that it appears as itself rather 
than switching to bold format.

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: 
{code:xml}
<copy todir=".">
  <fileset dir="dev-tools/idea">
    <exclude name="Intellij-Lucene-Codestyle.xml"/>
+   <exclude name="*.iml"/>
  </fileset>
  </copy>
+ <copy todir="." overwrite="true">
+   <fileset dir="dev-tools/idea">
+     <include name="*.iml"/>
+   </fileset>
+ </copy>
{code}

{{\*.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.


      was (Author: steve_rowe):
    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: 
{code:xml}
<copy todir=".">
  <fileset dir="dev-tools/idea">
    <exclude name="Intellij-Lucene-Codestyle.xml"/>
+   <exclude name="*.iml"/>
  </fileset>
  </copy>
+ <copy todir="." overwrite="true">
+   <fileset dir="dev-tools/idea">
+     <include name="*.iml"/>
+   </fileset>
+ </copy>
{code}

{{*.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: https://issues.apache.org/jira/browse/LUCENE-2611
>             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: 
> http://wiki.apache.org/lucene-java/HowtoConfigureIntelliJ

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to