美文网首页
maven的使用

maven的使用

作者: navyd | 来源:发表于2019-02-23 10:14 被阅读0次

    记录maven的问题及解决方案

    问题

    • plugins中报错Plugin execution not covered by lifecycle configuration: org.mybatis.generator:mybatis-generator-maven-plugin:1.3.7:generate (execution: Generate MyBatis Artifacts, phase: generate-sources)
    描述

    在使用mybatis generator时,maven配置为:

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
                <plugin>
                    <groupId>org.mybatis.generator</groupId>
                    <artifactId>mybatis-generator-maven-plugin</artifactId>
                    <version>1.3.7</version>
    <!-- 
    错误:Plugin execution not covered by lifecycle configuration: org.mybatis.generator:mybatis-generator-maven-plugin:1.3.7:generate (execution: Generate MyBatis Artifacts, phase: generate-sources)
    -->
                    <executions>
                        <execution>
                            <id>Generate MyBatis Artifacts</id>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                    </configuration>
                </plugin>
            </plugins>
      </build>
    
    解决方法
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
            </plugins>
            <!-- 解决问题: Plugin execution not covered by lifecycle configuration: org.mybatis.generator:mybatis-generator-maven-plugin:1.3.7:generate 
                (execution: Generate MyBatis Artifacts, phase: generate-sources) -->
            <pluginManagement>
                <plugins>
                    <plugin>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-maven-plugin</artifactId>
                        <version>1.3.7</version>
                        <executions>
                            <execution>
                                <id>Generate MyBatis Artifacts</id>
                                <goals>
                                    <goal>generate</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                        </configuration>
                    </plugin>
                </plugins>
            </pluginManagement>
        </build>
    
    • 源码打包

    描述:maven打包后默认的jar文件不带有.java源文件,不能在ide中查看文档

    解决方法

        <build>
            <plugins>
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>3.1.0</version>
                    <executions>
                        <execution>
                            <id>copy-resources</id>
                            <!-- here the phase you need -->
                            <phase>process-resources</phase>
                            <goals>
                                <goal>copy-resources</goal>
                            </goals>
                            <configuration>
                                <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                                <resources>
                                    <resource>
                                        <directory>src/main/java</directory>
                                        <includes>**/*.java</includes>
                                    </resource>
                                </resources>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    

    参考:

    maven实现打包带源代码的jar包
    Copy Resources

    • 配置编译时注解处理器

    描述:使用maven编译项目,并使用自定义的注解处理器,类似于javac -cp xxx-processor.jar

    解决方法:

    如果是标准配置的jar,即通过配置jar文件META-INFO/services/javax.annotation.processing.Processor,则不需要额外的配置,仅需要加载到依赖中即可。通过mvn clean compile即可看到效果。

        <dependencies>
            <dependency>
                <groupId>cn.navyd</groupId>
                <artifactId>useful-annotation</artifactId>
                <version>1.0.4-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>cn.navyd</groupId>
                <artifactId>annotation-processor</artifactId>
                <version>0.0.1-SNAPSHOT</version>
                <scope>compile</scope>
            </dependency>
        </dependencies>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
            </plugins>
        </build>
    

    eclipse也不需要配置,也能够发现注解处理器,享受eclipse 编译器提示。注意可能需要enable annotation processing和重启eclipse

    eclipse maven自动配置

    相关文章

      网友评论

          本文标题:maven的使用

          本文链接:https://www.haomeiwen.com/subject/jsvuyqtx.html