2012-03-12 7 views
1

私はプロジェクト依存マネージャーとしてgradleを使用していますが、netbeansが好きでmavenとのネイティブな統合が見つからないので、pom.xmlとしてgradleによって生成されたデフォルトのpomをコピーします。しかし、どのようにしてソースとターゲットレベルを設定しますか?コンパイルレベルを設定するgradleを生成するために

私のbuild.gradleは私が

gradle install 

を実行し、ビルド/ POMS/POM-default.xmlのを確認した後、それがデフォルトで設定されたソースでも目標レベルを設定することはありません

apply plugin: 'eclipse' 
apply plugin: 'maven' 
apply plugin: 'java' 

targetCompatibility=1.6 
sourceCompatibility=1.6 

のように見えます〜1.3

私は不足しているものは、コンパイルプラグインの設定です。

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
       <encoding>UTF-8</encoding> 
      </configuration> 
     </plugin> 

このpomの特定の部分の設定方法を見つけることができませんでした。私はライセンス、開発者などを設定するすべての例を見つけましたが、プラグインの仕様ではありません。

答えて

1

「ライセンスと開発者向けのサンプル」と同じように、セクションを追加できます。

+0

Gitのハブをチェックしないと、それは言う:クラスの_SCRIPT_CLASS_NAME_を:org.apache.maven.model.Model'を私はプロジェクト'に 'build.plugins.plugin'を追加しようとすると、 '。 – BigDong

2

私はそれを理解するためにしばらく時間がかかりました。上記のようにピーターが言ったように、あなたはそのセクションを追加することができます。少なくとも私のために、やったより簡単に言った。

幸いにも、春はグラデルを使用していますので、実際の例がたくさんあります。 > `そのような性質を私が試してみました

install { 
    repositories.mavenInstaller { 
     customizePom(pom, project) 
    } 
} 

def customizePom(pom, gradleProject) { 
    pom.whenConfigured { generatedPom -> 
     // respect 'optional' and 'provided' dependencies 
     gradleProject.optionalDeps.each { dep -> 
      generatedPom.dependencies.find { it.artifactId == dep.name }?.optional = true 
     } 
     gradleProject.providedDeps.each { dep -> 
      generatedPom.dependencies.find { it.artifactId == dep.name }?.scope = 'provided' 
     } 

     // eliminate test-scoped dependencies (no need in maven central poms) 
     generatedPom.dependencies.removeAll { dep -> 
      dep.scope == 'test' 
     } 

     // add all items necessary for maven central publication 
     generatedPom.project { 
      name = gradleProject.description 
      description = gradleProject.description 
      organization { 
       name = 'bajoneando' 
      } 
      build { 
       plugins { 
        plugin { 
         groupId = 'org.apache.maven.plugins' 
         artifactId = 'maven-compiler-plugin' 
         configuration { 
          source = '1.6' 
          target = '1.6' 
         } 
        } 
        plugin { 
         groupId = 'org.apache.maven.plugins' 
         artifactId = 'maven-surefire-plugin' 
         configuration { 
          includes { 
           include = '**/*Tests.java' 
          } 
          excludes { 
           exclude = '**/*Abstract*.java' 
          } 
         } 
        } 
       } 
       resources { 
        resource { 
         directory = 'src/main/java' 
         includes = ['**/*'] 
         excludes = ['**/*.java'] 
        } 
        resource { 
         directory = 'src/main/resources' 
         includes = ['**/*'] 
        } 
       } 
       testResources { 
        testResource { 
         directory = 'src/test/java' 
         includes = ['**/*'] 
         excludes = ['**/*.java'] 
        } 
        testResource { 
         directory = 'src/test/resources' 
         includes = ['**/*'] 
        } 
       } 
      } 
      developers { 
       developer { 
        id = 'lnramirez' 
        name = 'Luis Ramirez Monterosa' 
        email = '*****@gmail.com' 
       } 
      } 
     } 
    } 
} 
関連する問題