MapStruct生成代码

问题描述:

我正在学习根据参考指南使用MapStruct。 eclipse verion是MapStruct生成代码

适用于Web开发人员的Eclipse Java EE IDE。 版本:开普勒服务版本2

enter image description here

的pom.xml是如下只是相同的参考指南

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
 
    <modelVersion>4.0.0</modelVersion> 
 
    <groupId>com.map</groupId> 
 
    <artifactId>MapStruct</artifactId> 
 
    <version>0.0.1-SNAPSHOT</version> 
 

 
    <properties> 
 
     <org.mapstruct.version>1.0.0.Final</org.mapstruct.version> 
 
    </properties> 
 

 
    <dependencies> 
 
     <dependency> 
 
      <groupId>org.mapstruct</groupId> 
 
      <artifactId>mapstruct-jdk8</artifactId> 
 
      <version>${org.mapstruct.version}</version> 
 
     </dependency> 
 
    </dependencies> 
 

 
    <build> 
 
     <sourceDirectory>src</sourceDirectory> 
 
     <pluginManagement> 
 
      <plugins> 
 
       <plugin> 
 
        <artifactId>maven-compiler-plugin</artifactId> 
 
        <version>3.1</version> 
 
        <configuration> 
 
         <source>1.8</source> 
 
         <target>1.8</target> 
 
        </configuration> 
 
       </plugin> 
 
       <plugin> 
 
        <groupId>org.bsc.maven</groupId> 
 
        <artifactId>maven-processor-plugin</artifactId> 
 
        <version>2.2.4</version> 
 
        <configuration> 
 
         <defaultOutputDirectory> 
 
          ${project.build.directory}/generated-sources 
 
         </defaultOutputDirectory> 
 
         <processors> 
 
          <processor>org.mapstruct.ap.MappingProcessor</processor> 
 
         </processors> 
 
         <options> 
 
          <mapstruct.suppressGeneratorTimestamp> 
 
           true</mapstruct.suppressGeneratorTimestamp> 
 
          <mapstruct.defaultComponentModel>cdi</mapstruct.defaultComponentModel> 
 
         </options> 
 
        </configuration> 
 
        <executions> 
 
         <execution> 
 
          <id>process</id> 
 
          <phase>generate-sources</phase> 
 
          <goals> 
 
           <goal>process</goal> 
 
          </goals> 
 
         </execution> 
 
        </executions> 
 
        <dependencies> 
 
         <dependency> 
 
          <groupId>org.mapstruct</groupId> 
 
          <artifactId>mapstruct-processor</artifactId> 
 
          <version>${org.mapstruct.version}</version> 
 
         </dependency> 
 
        </dependencies> 
 
       </plugin> 
 
      </plugins> 
 
     </pluginManagement> 
 
    </build> 
 
</project>

@Mapper 
 
public interface CarMapper { 
 

 
    CarMapper INSTANCE = Mappers.getMapper(CarMapper.class); 
 

 
    @Mapping(source = "name", target = "fullName") 
 
    CarDto car2CarDto(Car car); 
 
}

它表示在构建项目时会生成实现代码。然而,这似乎并没有下目标/生成的来源产生文件夹

添加M2E插件,和使用MVN - 清洁安装后,会生成代码