精华内容
下载资源
问答
  • formatter-maven-plugin 该项目提供了一种机制,可以在Maven构建过程中自动(重新)格式化项目,或验证其格式,以便您的项目可以收敛于一致的代码样式,而与用户首选项,IDE设置等无关。 它开始关注该主题的帖子...
  • maven插件依赖 问题: 我们进行了一个集成测试,该测试创建了一个Spring ClassPathXmlApplicationContext ,同时这样做导致NoSuchMethodError爆炸。 事实证明,我们对Spring构件的依赖版本存在冲突。 这本身不是一...

    maven插件依赖

    问题:

    我们进行了一个集成测试,该测试创建了一个Spring ClassPathXmlApplicationContext ,同时这样做导致NoSuchMethodError爆炸。 事实证明,我们对Spring构件的依赖版本存在冲突。 这本身不是一个不寻常的问题-使用Maven依赖插件使用verbose选项解决了这些问题。 但是,当Maven插件错误时,您该怎么办?

    调查:

    我们开始深入研究,发现AbstractAutowireCapableBeanFactorygetTypeForFactoryMethod方法尝试访问GenericTypeResolver resolveReturnTypeForGeneric方法,并在java.lang.NoSuchMethodError: org.springframework.core.GenericTypeResolver.resolveReturnTypeForGenericMethod(Ljava/lang/reflect/Method;

    初步调查和谷歌搜索发现,该方法是在3.2.0中添加的,而我们应该在3.1.1中运行。 进一步的调查确定spring-data-mongodb依赖于范围[3.0.7-4) 1的 spring框架,并且由于maven在给定范围2的情况下采用了最新的可用版本,因此它尝试采用3.2.2。
    注意,在显式版本依赖项和范围依赖项之间存在冲突的情况下,上述更改有所变化,但是IINM在确定spring mongo的依赖项时没有冲突。

    该问题被两个症状进一步掩盖了:

    1. 我们还有其他使用这种模式的项目,没有问题-这可以通过以下事实来解释:maven的冲突解决机制选择默认情况下找到的最近版本3 ,因为所有其他需要spring-data-mongodb的项目都依赖于这个项目他们很幸运地抢到了3.1.1版本而不是3.2.2
    2. dependency:tree显示它带来了3.1.1,而带来了3.2.2-因为堆栈跟踪显示了其他结果,所以我编写了一个测试,检查上述每个类来自哪个jar,并验证了AbstractAutowireCapableBeanFactory类确实来自spring-beans 3.2.2而不是3.1.1,如“ mvndependency:tree”所示(非常感谢http://bit.ly/10zD1iV提供了在运行时查找类的jar的代码段)。

    Maven依赖项:在构件中使用显示spring-beans:3.1.1的树输出

    &gt:mvn dependency:tree -Dverbose -Dincludes=org.springframework
    ...
    (omitted for clarity)
    ...
    [INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ wix-feature-toggle-administration ---
    [INFO] artifact org.springframework:spring-beans: checking for updates from central
    [INFO] artifact org.springframework:spring-beans: checking for updates from snapshots
    [INFO] artifact org.springframework:spring-expression: checking for updates from central
    [INFO] artifact org.springframework:spring-expression: checking for updates from snapshots
    [INFO] artifact org.springframework:spring-tx: checking for updates from central
    [INFO] artifact org.springframework:spring-tx: checking for updates from snapshots
    [INFO] com.wixpress.common:wix-feature-toggle-administration:jar:2.180.0-SNAPSHOT
    ...
    [INFO] +- org.springframework.data:spring-data-mongodb:jar:1.0.1.RELEASE:compile
    [INFO] |  +- org.springframework:spring-beans:jar:3.1.1.RELEASE:compile
    [INFO] |  |  \- (org.springframework:spring-core:jar:3.2.2.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
    [INFO] |  +- org.springframework:spring-expression:jar:3.1.1.RELEASE:compile
    [INFO] |  |  \- (org.springframework:spring-core:jar:3.2.2.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
    [INFO] |  \- org.springframework.data:spring-data-commons-core:jar:1.2.1.RELEASE:compile
    [INFO] |     +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
    [INFO] |     \- (org.springframework:spring-tx:jar:3.1.1.RELEASE:compile - omitted for duplicate)
    [INFO] +- com.wixpress.common:wix-framework:jar:2.180.0-SNAPSHOT:compile
    [INFO] |  +- org.springframework:spring-core:jar:3.1.1.RELEASE:compile
    [INFO] |  |  \- org.springframework:spring-asm:jar:3.1.1.RELEASE:compile
    ...
    I've removed additional outputs for clarity. The additional outputs were all 3.1.1 and were further down the tree (so irrelevant due to maven conflict resolving mechanism)

    工件中使用了证明spring-beans:3.2.2的测试(断言错误中的jvm在说什么)

    package com.wixpress.springVersionBug;
    
    
    import org.junit.*;
    import org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory;
    import org.springframework.core.GenericTypeResolver;
    import java.security.CodeSource;
    import static org.hamcrest.Matchers.endsWith;
    
    /**
     * @author ittaiz
     * @since 3/24/13
     */
    
    public class SpringVersionTest {
    
    
        @Test
        public void verifySpringBeans311InClasspath(){
            verifyCorrectSpringVersionInClasspathFor(AbstractAutowireCapableBeanFactory.class,"spring-beans-3.1.1.RELEASE.jar");
        }
        @Test
        public void verifySpringCore311InClasspath(){
            verifyCorrectSpringVersionInClasspathFor(GenericTypeResolver.class,"spring-core-3.1.1.RELEASE.jar");
        }
        public void verifyCorrectSpringVersionInClasspathFor(Class springClass,String expectedJarFileName){
            CodeSource springClassCodeSource = springClass.getProtectionDomain().getCodeSource();
            Assert.assertNotNull("expecting "+expectedJarFileName+" to be loaded by non-system class loader",springClassCodeSource);
            Assert.assertThat(springClassCodeSource.getLocation().toString(),endsWith(expectedJarFileName));
        }
    }

    spring-beans成为3.2.2时, spring-core工件出现在3.1.1中的原因是我们的框架显式依赖于spring-core而该工件显式依赖于框架。 这意味着来自框架的spring-core 3.1.1是2跳,比来自spring-data-mongodb的3.2.2短。

    解:

    依赖spring-data-mongodb而像这样排除spring-beans

    <dependency>
      <groupId>org.springframework.data</groupId>
      <artifactId>spring-data-mongodb</artifactId>
      <version>1.0.1.RELEASE</version>
      <exclusions>
        <exclusion>
          <groupId>org.springframework</groupId>
          <artifactId>spring-beans</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    开放问号:

    为什么dependency:tree(在详细模式下)没有显示在3.2.2中而是在3.1.1中显示了spring-beans,同时明确指定由于冲突而删除了spring-core 3.2.2? 我将此归结为依赖项插件中的错误。

    1. http://repo1.maven.org/maven2/org/springframework/data/spring-data-mongodb-parent/1.0.1.RELEASE/spring-data-mongodb-parent-1.0.1.RELEASE.pom
    2. http://www.maestrodev.com/better-builds-with-maven/creating-applications-with-maven/resolving-dependency-conflicts-and-using-version-ranges/
    3. http://www.maestrodev.com/better-builds-with-maven/creating-applications-with-maven/resolving-dependency-conflicts-and-using-version-ranges/

    参考: Wix IO博客上的Maven依赖插件来自我们的JCG合作伙伴 Yoav Abrahami时。

    翻译自: https://www.javacodegeeks.com/2013/04/when-maven-dependency-plugin-lies.html

    maven插件依赖

    展开全文
  • NULL 博文链接:https://lyb520320.iteye.com/blog/972566
  • 版本Maven插件 介绍 该项目诞生于能够自动管理Maven项目版本的需求。 更准确地说,此插件允许根据可在其配置中指定的算法来增加版本号。 命令 add-snapshot:允许通过添加后缀“ snapshot”来增加版本号的命令 ...
  • maven其实是由许多内置的插件,来支撑我们日常需求的。下面来看看都有哪些常用的插件,你注意到过吗? 编译插件 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>...

    开发的代码使用maven进行管理,再常见不过。maven其实是由许多内置的插件,来支撑我们日常需求的。下面来看看都有哪些常用的插件,你注意到过吗?

    编译插件
    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-compiler-plugin</artifactId>
    	<version>2.3.2</version>
    	<!--指定JDK版本和编码-->
    	<configuration>
    		<source>1.8</source>
    		<target>1.8</target>
    		<encoding>UTF-8</encoding>
    	</configuration>
    </plugin>
    
    源码打包插件
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.6.0</version>
        <!-- 进行package命令时就可以将源码同时进行打包 -->
        <!-- 所以我们需要绑定source插件到我们default生命周期的package阶段 -->
        <executions>
            <execution>
                <!-- 定义一个阶段,这个阶段是package -->
                <phase>package</phase>
                <goals>
                    <goal>jar-no-fork</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
    

    在默认的情况下,对于src/main/java目录,Maven只打包class文件,而不会打包其他文件,如果src/main/java目录中有其他类型的文件,如.xml、.properties文件。需要做如下配置

    在pom文件中找到<build>节点增加如下配置

    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
        </resource>
    </resources>
    
    生成jar包插件(agent开发使用)
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.0.2</version>
        <configuration>
            <archive>
                <manifest>
                    <addClasspath>true</addClasspath>
                </manifest>
                <manifestEntries>
                	<!-- premain类的全类名 -->
                    <Premain-Class>
                        com.kaka.jtest.jdk.java.lang.instrument.VMAgent
                    </Premain-Class>
                    <!-- agent类的全类名 -->
                    <Agent-Class>
                        com.kaka.jtest.jdk.java.lang.instrument.hotswap.ReplaceAgent
                    </Agent-Class>
                    <Can-Redefine-Classes>
                        true
                    </Can-Redefine-Classes>
                    <Can-Retransform-Classes>
                        true
                    </Can-Retransform-Classes>
                    <Boot-Class-Path>D:\Java\jdk1.8.0_31\lib\tools.jar</Boot-Class-Path>
                </manifestEntries>
            </archive>
        </configuration>
    </plugin>
    
    生成war包插件
    <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.6</version>
        <configuration>
            <warSourceDirectory>webapp</warSourceDirectory>
            <failOnMissingWebXml>false</failOnMissingWebXml>
        </configuration>
    </plugin>
    

    持续更新中。。。

    展开全文
  • maven 版本号插件 抽象 Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本。 通常,软件发行版本号遵循简单的1.0.0.0-SNAPSHOT格式。 但是最近我需要在版本号中添加一个限定符,例如1.0-...

    maven 版本号插件

    抽象

    Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本。 通常,软件发行版本号遵循简单的1.0.0.0-SNAPSHOT格式。 但是最近我需要在版本号中添加一个限定符,例如1.0-beta-SNAPSHOT1.0.0-fix-bug-description-SNAPSHOT 。 在我第一次尝试添加限定符之后,Maven发行插件以意外的方式自动增加了版本号。 因此,我需要研究Maven发行版插件版本的自动递增行为,但要在生产Git存储库中做很多废话(我没有开发库)。 本博客的目的是展示如何配置Maven发行插件,使其可以在本地运行而不更改生产源代码控制。

    免责声明

    这篇文章仅供参考。 在使用所提供的任何信息之前,请认真思考。 从中学到东西,但最终自己做出决定,风险自负。

    要求

    我使用以下主要技术完成了本文的所有工作。 您可能可以使用不同的技术或版本来做相同的事情,但不能保证。

    • NetBeans 11.2
    • Maven 3.3.9(与NetBeans捆绑在一起)
    • Maven发布插件2.5.1
    • Java 11(zulu11.35.15-ca-jdk11.0.5-win_x64)
    • 适用于Windows 2.25.0的Git

    注意 Maven版本插件假定可执行文件(如git)在PATH 。 如果遇到找不到git命令的错误,则需要确保Git的安装独立于IDE且位于PATH

    下载

    访问我的GitHub页面https://github.com/mjremijan以查看我所有的开源项目。 这篇文章的代码位于: https : //github.com/mjremijan/thoth-maven-release-plugin

    安装Git

    您需要做的第一件事是安装Git。 即使Git已集成到您的IDE中(与NetBeans一样),Maven发行版插件仍假定其所需的可执行文件在PATH上可用。 为您的环境下载,安装和配置PATH。

    POM <scm>标签

    您需要做的第二件事是配置POM <scm>标签。 当Maven版本插件运行时,它使用<scm>标记值来标识源控制系统的位置。

    相关配置如下,请参阅GitHub上的完整pom.xml

    因为我想在本地运行并且不连接到生产源代码控制系统,所以我的示例使用了Git。 Git不需要服务器就可以很好地运行。 让我们看一下<scm>标签。

    清单1 – <scm>标签

     <scm> 
       <url>scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</url> <url>scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</url> 
       <connection> 
         scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</connection> scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</connection> 
       <developerConnection> 
         scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git 
       </developerConnection>  </scm> 

    清单1中的代码显示了<scm>标记的配置。 显然,在我的计算机的文件系统上对该项目的.git文件夹的引用应该很.git您必须为您的计算机更改此值。 请记住,目标是在本地工作! 此配置将您带到那里。

    配置<scm>标记后,下一步是配置maven-release-plugin。 接下来让我们看看。

    POM Maven-发布插件

    第三件事是配置maven-release-plugin工件。 此配置用于Maven登台存储库。

    相关配置如下,请参阅GitHub上的完整pom.xml 。 让我们看一下这个配置。

    清单2 – maven-release-plugin标签

     <build> 
       <plugins> 
         <plugin> 
           <groupId>org.apache.maven.plugins</groupId> 
           <artifactId>maven-release-plugin</artifactId> 
           <version> 2.5 . 1 </version> 
           <dependencies> 
             <dependency> 
               <groupId>org.apache.maven.shared</groupId> 
               <artifactId>maven-invoker</artifactId> 
               <version> 2.2 </version> 
             </dependency> 
           </dependencies> 
           <configuration> 
             <stagingRepository> 
               localforme:: default ::file: //C:/Users/Michael/.m2/repository ::file: //C:/Users/Michael/.m2/repository 
             </stagingRepository> 
           </configuration> 
         </plugin> 
         ....  </build> 

    第6行将maven-release-plugin设置为2.5.1版。 这是我研究时(2019年第二季度)的最新情况。 使用低于2.5.2的版本还有一些其他问题,我将在接下来的内容中介绍。

    第8行将maven-invoker依赖项设置为2.2版。 Maven 3.3将脚本名称(在Windows上)从mvn.bat更改为mvn.cmd2.5.2版以下的maven-release-plugin假设使用mvn.bat 。 将maven-invoker更改为2.2版会将假设更改为mvn.cmd以便可以使用Maven 3.3+(Lucas,2015年)。 如果您使用大于或等于2.5.2版的maven-release-plugin,则不需要此maven-invoker配置。

    第15行设置Maven登台存储库的位置。 通常,您可以在settings.xml中进行settings.xml 。 如果未设置,则会出现构建错误。 我在这里展示了如何配置它。 如果您在settings.xml拥有它,则可以删除此配置。

    现在已经配置了pom.xml ,接下来让我们看看如何运行它。

    MVN命令

    现在已经设置好配置,是时候运行Maven项目并测试一切正常了。 清单3显示了mvn的属性和开关。

    清单3 – mvn命令

     mvn 
       -Dmaven.test.skip= true 
       -Dmaven.javadoc.failOnError= false 
       --batch-mode release:clean release:prepare release:stage 

    此命令行没有太多内容。 第4行是最重要的。 它指定要执行的Maven-release-plugin目标。

    现在您可以进行测试了。 运行命令,看看会发生什么。

    摘要

    如果您使用的是NetBeans之类的IDE,当在文件系统上检测到更改时自动监视并重新加载文件,则可以打开pom.xml ,然后运行mvn命令,最后观察<version>标记随Maven的变化而自动更改。运行。 这样,您可以从<version>标记的任意值开始,并研究如何自动更改它。 请享用!

    参考资料

    卢卡斯 (2015年7月1日)。 无法执行目标Maven准备的 [Web日志注释]。 堆栈溢出。 从https://stackoverflow.com/questions/29755620/failed-to-execute-goal-maven-releaseprepare检索。

    翻译自: https://www.javacodegeeks.com/2020/02/testing-maven-release-plugin-auto-increment-version-number.html

    maven 版本号插件

    展开全文
  • maven抽象 Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本。 通常,软件发行版本号遵循简单的1.0.0.0-... 在我第一次尝试添加限定符后,Maven发行插件以意外的方式自动增加了版本号。 因...
    maven

    maven

    抽象

    Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本。 通常,软件发行版本号遵循简单的1.0.0.0-SNAPSHOT格式。 但是最近我需要在版本号中添加限定符-类似于1.0-beta-SNAPSHOT1.0.0-fix-bug-description-SNAPSHOT 。 在我第一次尝试添加限定符后,Maven发行插件以意外的方式自动增加了版本号。 因此,我需要研究Maven版本插件版本的自动递增行为,但要在生产Git存储库中做很多废话(我没有开发者存储库)。 本博客的目的是展示如何配置Maven发行插件,以便它可以在本地运行而不更改生产源代码控制。

    免责声明

    这篇文章仅供参考。 在使用所提供的任何信息之前,请认真思考。 从中学到东西,但最终自己做出决定,风险自负。

    要求

    我使用以下主要技术完成了本文的所有工作。 您可能可以使用不同的技术或版本来做相同的事情,但不能保证。

    • NetBeans 11.2
    • Maven 3.3.9(与NetBeans捆绑在一起)
    • Maven发布插件2.5.1
    • Java 11(zulu11.35.15-ca-jdk11.0.5-win_x64)
    • 适用于Windows 2.25.0的Git

    注意Maven版本插件假定可执行文件(如git)在PATH 。 如果收到未找到git命令的错误,则需要确保Git的安装独立于IDE且位于PATH

    下载

    访问我的GitHub页面https://github.com/mjremijan以查看我所有的开源项目。 这篇文章的代码位于: https : //github.com/mjremijan/thoth-maven-release-plugin

    安装Git

    您需要做的第一件事是安装Git。 即使Git已集成到您的IDE中(与NetBeans一样),Maven发行版插件仍假定其所需的可执行文件在PATH上可用。 为您的环境下载,安装和配置PATH。

    POM <scm>标签

    您需要做的第二件事是配置POM <scm>标记。 当Maven版本插件运行时,它使用<scm>标记值来标识源控制系统的位置。

    相关配置如下,请参阅GitHub上的完整pom.xml

    因为我想在本地运行并且不连接到生产源代码控制系统,所以我的示例使用了Git。 Git不需要服务器就可以很好地运行。 让我们看一下<scm>标签。

    清单1 – <scm>标签

     <scm>
    
      <url>scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</url> <url>scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</url>
    
      <connection>
    
        scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</connection> scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git</connection>
    
      <developerConnection>
    
        scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git scm:git:file: //D:/Projects/thoth-maven-release-plugin/.git
    
      </developerConnection>
     </scm>
    

    清单1中的代码显示了<scm>标记的配置。 显然,对我的计算机文件系统上项目的.git文件夹的引用对您来说应该很突出。 您必须为您的计算机更改此值。 请记住,目标是在本地工作! 此配置将您带到那里。

    配置<scm>标记后,下一步是配置maven-release-plugin。 接下来让我们看看。

    POM Maven-发布插件

    第三件事是配置maven-release-plugin工件。 此配置用于Maven登台存储库。

    相关配置如下,请参阅GitHub上的完整pom.xml 。 让我们看一下这个配置。

    清单2 – maven-release-plugin标签

     <build>
    
      <plugins>
    
        <plugin>
    
          <groupId>org.apache.maven.plugins</groupId>
    
          <artifactId>maven-release-plugin</artifactId>
    
          <version> 2.5 . 1 </version>
    
          <dependencies>
    
            <dependency>
    
              <groupId>org.apache.maven.shared</groupId>
    
              <artifactId>maven-invoker</artifactId>
    
              <version> 2.2 </version>
    
            </dependency>
    
          </dependencies>
    
          <configuration>
    
            <stagingRepository>
    
              localforme:: default ::file: //C:/Users/Michael/.m2/repository ::file: //C:/Users/Michael/.m2/repository
    
            </stagingRepository>
    
          </configuration>
    
        </plugin>
    
        ....
     </build>
    

    第6行将maven-release-plugin设置为2.5.1版。 这是我研究时(2019年第二季度)的最新情况。 使用低于2.5.2的版本还有一些其他的陷阱,我将在接下来的内容中介绍。

    第8行将maven-invoker依赖项设置为2.2版。 Maven 3.3将脚本名称(在Windows上)从mvn.bat更改为mvn.cmd2.5.2版以下的maven-release-plugin假定为mvn.bat 。 将maven-invoker更改为2.2版会将假设更改为mvn.cmd以便可以使用Maven 3.3+(Lucas,2015年)。 如果您使用大于或等于2.5.2版的maven-release-plugin,则不需要此maven-invoker配置。

    第15行设置Maven登台存储库的位置。 通常,您可以在settings.xml中进行settings.xml 。 如果未设置,则会出现构建错误。 我在这里展示了如何配置它。 如果您在settings.xml拥有它,则可以删除此配置。

    现在已经配置了pom.xml ,接下来让我们看看如何运行它。

    MVN命令

    现在已经设置好配置,是时候运行Maven项目并测试一切正常了。 清单3显示了mvn的属性和开关。

    清单3 – mvn命令

     mvn
    
      -Dmaven.test.skip= true
    
      -Dmaven.javadoc.failOnError= false
    
      --batch-mode release:clean release:prepare release:stage
    

    此命令行没有太多内容。 第4行是最重要的。 它指定要执行的Maven-release-plugin目标。

    现在您可以进行测试了。 运行命令,看看会发生什么。

    概要

    如果您使用的是NetBeans之类的IDE,当在文件系统上检测到更改时会自动监视并重新加载文件,则可以打开pom.xml ,然后运行mvn命令,最后观察<version>标记随Maven的变化而自动更改。运行。 这样,您可以从<version>标记的任意值开始,并研究如何自动更改它。 请享用!

    参考文献

    卢卡斯(2015年7月1日)。 无法执行预先准备的目标Maven [Web日志注释]。 堆栈溢出。 从https://stackoverflow.com/questions/29755620/failed-to-execute-goal-maven-releaseprepare检索。

    翻译自: https://www.javacodegeeks.com/2020/02/testing-maven-release-plugin-auto-increment-version-number.html

    maven

    展开全文
  • Maven Build压缩打包(一)-maven插件开发

    千次阅读 2018-04-27 14:06:50
    前言性能一直是项目中比较重要的一点,尤其门户网站,对页面的响应要求是很高的,从性能角度上来讲,对于Web端的优化其中重要的一点无疑是JS、CSS文件...本文将分为三部分讲解:Maven插件开发YUICompressor压缩JS、...
  • <build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descr..
  • Maven仓库和插件

    千次阅读 2018-05-30 11:38:18
    Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件。 Maven在某个统一的位置存储所有项目共享的构建,这个位置就称之为仓库。 任何构件都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的...
  • Maven的生命周期和插件

    千次阅读 2018-11-06 23:14:30
    (尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_25827845/article/details/83795622冷血之心的博客) 关注微信公众号(文强的技术小屋),学习更多技术知识,一起遨游知识海洋~ ...Maven的生命周期...
  • maven插件的开发

    2021-01-28 17:04:07
    想要理解maven插件,我们就尝试来开发一个maven插件 官方文档位置:http://maven.apache.org/guides/introduction/introduction-to-plugins.html 什么是mavne插件 Maven 实际上是一个依赖插件执行的框架,每个任务...
  • skip跳出Maven自定义插件

    千次阅读 2017-12-21 09:04:27
    有时候,不需要执行某个自定义插件,可以向mojo传入一个skip参数。如图: ...执行mvn命令,增加跳过参数,如:mvn clean deploy -D*.*.skip=true (*代表名称) 构建时,即可跳过该插件。打完收工。
  • fantom方法无济于事,它只是添加一些垃圾以增加对应用程序进行反向工程的难度。 反相处理器 该处理器反转if条件以及then和else块。 变量声明 该处理器将变量声明移至块的开头。 EncryptLiteralProcessor 该处理器...
  • Jenkins添加maven插件

    2019-04-01 11:30:00
    1.1.1安装Maven插件 我们要使用Jenkins+Maven对Java项目进行构建,需要安装Maven Project Plugin,具体安装过程请参考插件管理部分 1.1.23、Linux下安装Maven 1)下载Maven 3安装包 官网:...
  • 提供在maven下使用fis一些功能的插件,是基于fis的。 主要是解决一些在maven下使用fis时遇到的一些路径映射问题,似的在maven构建项目时可以像fis那样处理前端代码。 使用前必读 fis-maven-plugin毕竟和fis本身不同...
  • maven 插件(旧版),在 Gradle 6.2 之后,就完全被弃用了(增加了 @Deprecated 注解) maven-publish 插件 maven插件,是 Gradle 1.0 的时候提供的用于发布aar/jar包到 Maven 仓库的插件。在 Gradle 1.3 中,...
  • Maven集成tomcat8插件详细配置

    千次阅读 2021-05-19 00:55:34
    首先第一步需要正确设置好Maven仓库的配置信息: ...其中组好就修改和增加了以下 1.本地仓库的目录(我这里是E:/apache-maven-3.8.1/repository,repository是自己创建的文件夹名字,我喜欢放在mave.
  • IDEA maven helper插件安装使用1. IDEA中maven helper安装:2. maven helper使用: 项目中常常存在jar包冲突导致的意想不到的问题,分析冲突的包 1. IDEA中maven helper安装: ① IDEA中File ⇒ setting ② Plugins...
  • Maven POM(四) 项目和Maven是两个东西两者之间要通过POM来产生关系 POM 代表项目对象模型。它是 Maven 中工作的基本单位,这是一...POM 也包含了目标和插件。在执行任务或目标时,Maven 会使用当前目录中的 PO...
  • IntelliJ IDEA添加MAVEN插件

    千次阅读 2018-04-30 11:23:00
    修改MAVEN默认的地址,重新选择配置文件 ☆特别注意,在配置的时候一定要选择Default Settings要不然每次新建其他工程都会默认使用IDEA自带的MAVEN 修改MAVEN安装路径下conf文件中的settion.xml文件1.设置默认仓库...
  • Maven几个常用的maven插件

    万次阅读 2017-12-27 11:12:31
     我们使用maven做一些日常的工作开发的时候,无非是想利用这个工具带来的一些便利。比如它带来的依赖管理,方便我们打包和部署运行。这里几个常见的插件就是和这些工程中常用的步骤相关。   maven-compile-...
  • 测试Maven版本插件自动递增版本号

    千次阅读 2020-06-11 07:45:39
    抽象 Maven版本插件是一个非常强大的工具,我在很大程度上依赖于它来协调软件版本。 通常,软件发行版本号遵循简单的1.0.... 在我第一次尝试添加限定符后,Maven发行插件以意外的方式自动增加了版本号。 因此,我...
  • 1、maven安装配置: 1、本机安装maven maven软件的下载地址http://maven.apache.org/download.cgi 2、配置环境变量:将下载回来的包解压到任意地址,我的路径是D:\installed\apache-maven-3.3.9 3.新建环境变量MAVEN...
  • Spring Boot Maven Plugin文档 本文直接通过一个例子来说明,其他参数类同。...如果是通过maven插件运行的话,配置有所不同。我们其实要指定的是spring-boot插件提供的属性。查阅插件文档:https://doc
  • IDEA中在maven项目中添加tomcat插件

    千次阅读 2019-08-10 13:07:01
    IDEA中在maven项目中添加tomcat插件 创建步骤 首先创建一个maven项目 再在pom.xml文件中添加tomcat插件,注意导入依赖的位置是在< plugins>< /plugins>标签中 <!-- 加入tomcat插件--> <...
  • 本文将介绍,Maven如何介绍Tomcat插件Maven Tomcat插件现在主要有两个版本,tomcat-maven-plugin和tomcat7-maven-plugin,使用方式基本相同。 tomcat-maven-plugin 插件官网:http://mojo...
  • Maven 打包插件的pom.xml配置

    千次阅读 2015-08-31 16:13:10
    ${projectName} org.apache.maven.plugins maven-resources-plugin true
  • 我最终编写了自己的插件,利用mojo-executor调用其他mojos . 这允许我1)集中构建配置和2)最小化在每个子项目中重复的配置量 .(如果您对所有这些的原因感到好奇:每个子项目都是一个将从命令行执行的作业 . 该构建...
  • 使用 maven enforcer 插件检查依赖冲突

    千次阅读 2016-10-25 16:43:36
    maven enforcer 插件并不能解决依赖冲突,但可以检查依赖冲突,而检查是解决的第一步。 对项目开发者而言,对可能冲突的依赖,我们必须清楚项目最终将包含、不包含哪些依赖,甚至确定依赖什么版本,即对最终依赖...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,469
精华内容 14,987
关键字:

maven增加插件