Eclipse 如何在从Mapstruct生成的源代码上禁用派生标志,以及如何仅在本地PC上而不是在生成服务器上生成Mapstruct类?
第一个问题:Mapstruct生成代码到目标注释文件夹,该文件夹有一个“派生”标记。RTC忽略了这一点,因此我无法签入生成的代码(不要问我为什么要这样做-我需要它)。是否有机会禁用gen文件夹上的派生标记,以便将生成的类(.java)签入存储库? 第二个问题:Mapstruct类应该在本地计算机上生成,而不是在构建服务器上生成。如何将maven配置为仅在本地执行 先谢谢你 目前我的pom.xml看起来是这样的,因为我无法按照需要的方式配置它:Eclipse 如何在从Mapstruct生成的源代码上禁用派生标志,以及如何仅在本地PC上而不是在生成服务器上生成Mapstruct类?,eclipse,maven,mapstruct,rational-team-concert,Eclipse,Maven,Mapstruct,Rational Team Concert,第一个问题:Mapstruct生成代码到目标注释文件夹,该文件夹有一个“派生”标记。RTC忽略了这一点,因此我无法签入生成的代码(不要问我为什么要这样做-我需要它)。是否有机会禁用gen文件夹上的派生标记,以便将生成的类(.java)签入存储库? 第二个问题:Mapstruct类应该在本地计算机上生成,而不是在构建服务器上生成。如何将maven配置为仅在本地执行 先谢谢你 目前我的pom.xml看起来是这样的,因为我无法按照需要的方式配置它: <plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<generatedSourcesDirectory>gen</generatedSourcesDirectory>
<annotationProcessorPaths>
<path>
<groupId>de.......</groupId>
<artifactId>mapstruct_config</artifactId>
<version>${config.version}</version>
</path>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>${org.mapstruct.version}</version>
</path>
</annotationProcessorPaths>
<compilerArgs>
<compilerArg>
-Amapstruct.suppressGeneratorTimestamp=true
</compilerArg>
<compilerArg>
-Amapstruct.suppressGeneratorVersionInfoComment=true
</compilerArg>
<compilerArg>
-Amapstruct.unmappedTargetPolicy=WARN
</compilerArg>
</compilerArgs>
</configuration>
</plugin>
maven编译器插件
1.6
1.6
消息
判定元件。。。。。。。
mapstruct_配置
${config.version}
org.mapstruct
mapstruct处理器
${org.mapstruct.version}
-Amapstruct.suppressGeneratorTimestamp=true
-Amapstruct.SuppressGeneratorVersionInfo=true
-Amapstruct.unappedTargetPolicy=WARN
1:gen文件夹没有派生标记
2:annotationProcessor仅在本地机器上工作我假定dervied标记来自Eclipse(IntelliJ也这样做)。最有可能的情况是,您必须在IDE中手动禁用该功能,但不确定它是否能够始终工作,因为通常这些位置都是从Maven本身应用的
为了使注释处理器仅在本地运行,我认为您需要添加一个自定义maven配置文件,在其中配置
annotationProcessorPaths
,默认配置文件(在CI上)不会有annotationProcessorPaths
,因此不会运行注释处理我假定dervied标记来自Eclipse(IntelliJ也会这样做)。最有可能的情况是,您必须在IDE中手动禁用该功能,但不确定它是否能够始终工作,因为通常这些位置都是从Maven本身应用的
为了使注释处理器仅在本地运行,我认为您需要添加一个自定义maven配置文件,在其中配置AnnotationProcessorPath
,默认配置文件(在CI上)将没有AnnotationProcessorPath
,因此不会运行注释处理