Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
EclipseJDT和Maven/Tycho不同意警告_Eclipse_Maven_Tycho - Fatal编程技术网

EclipseJDT和Maven/Tycho不同意警告

EclipseJDT和Maven/Tycho不同意警告,eclipse,maven,tycho,Eclipse,Maven,Tycho,这是相关的,但是一个不同的问题 我有一堆带有import语句的Javadoc引用,如引用问题中所述。Eclipse没有对此发出警告,但在使用Maven/Tycho构建代码时,仍然会收到编译器警告。我认为指定jdt应该使Maven使用与Eclipse相同的编译器,从而生成相同的警告集 我知道我可以在Javadoc标记中使用完全限定名来避免import语句,但我想知道的是,在使用Maven/Tycho构建时,如何获得与在Eclipse中构建时相同的编译器警告集 默认情况下,Tycho使用JDT编译器

这是相关的,但是一个不同的问题

我有一堆带有import语句的Javadoc引用,如引用问题中所述。Eclipse没有对此发出警告,但在使用Maven/Tycho构建代码时,仍然会收到编译器警告。我认为指定
jdt
应该使Maven使用与Eclipse相同的编译器,从而生成相同的警告集


我知道我可以在Javadoc标记中使用完全限定名来避免import语句,但我想知道的是,在使用Maven/Tycho构建时,如何获得与在Eclipse中构建时相同的编译器警告集

默认情况下,Tycho使用JDT编译器,因此无需设置
。但是,Tycho和Eclipse中的编译器设置默认值可能不同,或者您可能已经更改了工作区中的默认设置。您可以尝试通过参数在Tycho中配置编译器以匹配您的工作区设置,但这可能会变得相当棘手

使用(cf.)可以更容易地在Eclipse和Tycho中获得完全相同的编译器设置:

  • 在Eclipse中启用特定于项目的Java编译器设置,并按照需要的方式进行配置。这将在项目中创建一个文件
    .settings/org.eclipse.jdt.core.prefs

  • 添加以下Maven配置:

    <plugin>
       <groupId>org.eclipse.tycho</groupId>
       <artifactId>tycho-compiler-plugin</artifactId>
       <version>${tycho-version}</version>
       <configuration>
          <useProjectSettings>true</useProjectSettings>
       </configuration>
    </plugin>
    
    
    org.eclipse.tycho
    第谷编译器插件
    ${tycho版本}
    真的
    
  • 这使得Tycho中的JDT编译器无论何时都使用Eclipse项目设置


    请注意,您需要将
    .settings/org.eclipse.jdt.core.prefs
    文件置于版本控制之下,以使您的构建可复制。

    您在Tycho构建中吗?是的,我有。我确实收到了警告,只是不同的警告。这太棒了。谢谢