精华内容
下载资源
问答
  • pom中build配置

    千次阅读 2019-01-22 17:28:40
    1.分类  (1)全局配置(project build)  针对整个项目的所有情况都有效    (2)配置(profile build)  针对不同的profile配置 ...http://maven.apache.org/POM/4.0.0" xmlns:xs...

    1.分类

           (1)全局配置(project build)

                     针对整个项目的所有情况都有效

     

           (2)配置(profile build)

                     针对不同的profile配置

    <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/maven-v4_0_0.xsd">
      …
      <!– "Project Build" contains more elements than just the BaseBuild set –>
      <build>…</build>
      <profiles>
        <profile>
          <!– "Profile Build" contains a subset of "Project Build"s elements –>
          <build>…</build>
        </profile>
      </profiles>
    </project>
    

    2.配置说明

           (1)基本元素

    <build>
            <defaultGoal>install</defaultGoal>
            <directory>${basedir}/target</directory>
            <finalName>${artifactId}-${version}</finalName>
            <filters>
                    <filter>filters/filter1.properties</filter>
            </filters>
             ...
    </build>
    

    1)defaultGoal

    执行build任务时,如果没有指定目标,将使用的默认值。

    如上配置:在命令行中执行mvn,则相当于执行mvn install

     2)directory
     build目标文件的存放目录,默认在${basedir}/target目录

    3)finalName

    build目标文件的名称,默认情况为${artifactId}-${version}

    4)filter

    定义*.properties文件,包含一个properties列表,该列表会应用到支持filter的resources中。

    也就是说,定义在filter的文件中的name=value键值对,会在build时代替${name}值应用到resources中。

    maven的默认filter文件夹为${basedir}/src/main/filters

     

    (2)Resources配置

    用于包含或者排除某些资源文件

    <build>
            ...
           <resources>
                      <resource>
                            <targetPath>META-INF/plexus</targetPath>
                            <filtering>false</filtering>
    			<directory>${basedir}/src/main/plexus</directory>
    			<includes>
    				<include>configuration.xml</include>
    			</includes>
    			<excludes>
    				<exclude>**/*.properties</exclude>
    			</excludes>
    		 </resource>
    	</resources>
    	<testResources>
    		...
    	</testResources>
    	...
    </build>
    

    1)resources

       一个resources元素的列表。每一个都描述与项目关联的文件是什么和在哪里

    2)targetPath

     指定build后的resource存放的文件夹,默认是basedir。通常被打包在jar中的resources的目标路径是META-INF

    3)filtering

    true/false,表示为这个resource,filter是否激活
     4)directory

    定义resource文件所在的文件夹,默认为${basedir}/src/main/resources

    5)includes

    指定哪些文件将被匹配,以*作为通配符

    6)excludes

     指定哪些文件将被忽略

    7)testResources

     定义和resource类似,只不过在test时使用

    (3)plugins配置

           用于指定使用的插件

    <build>
        ...
    	<plugins>
    		<plugin>
    			<groupId>org.apache.maven.plugins</groupId>
    			<artifactId>maven-jar-plugin</artifactId>
    			<version>2.0</version>
    			<extensions>false</extensions>
    			<inherited>true</inherited>
    			<configuration>
    				<classifier>test</classifier>
    			</configuration>
    			<dependencies>...</dependencies>
    			<executions>...</executions>
    		</plugin>
        </plugins>
    </build>
    

    1)GAV

        指定插件的标准坐标

    2)extensions

          是否加载plugin的extensions,默认为false

     3)inherited

         true/false,这个plugin是否应用到该pom的孩子pom,默认为true

    4)configuration

          配置该plugin期望得到的properties

     5)dependencies

           作为plugin的依赖

    6)executions

      plugin可以有多个目标,每一个目标都可以有一个分开的配置,可以将一个plugin绑定到不同的阶段

    假如绑定antrun:run目标到verify阶段

    <build>
        <plugins>
    		<plugin>
    			<artifactId>maven-antrun-plugin</artifactId>
    			<version>1.1</version>
    			<executions>
    				<execution>
    					<id>echodir</id>
    					<goals>
    						<goal>run</goal>
    					</goals>
    					<phase>verify</phase>
    					<inherited>false</inherited>
    					<configuration>
    						<tasks>
    							<echo>Build Dir: ${project.build.directory}</echo>
    						</tasks>
    					</configuration>
    				</execution>
    			</executions>
    		</plugin>
        </plugins>
    </build>
    

                id:标识,用于和其他execution区分。当这个阶段执行时,它将以这个形式展示[plugin:goal execution: id]。在这里为: [antrun:run execution: echodir]
                goals:目标列表

                phase:目标执行的阶段

              inherit:子类pom是否继承

              configuration:在指定目标下的配置

     

    (4)pluginManagement配置

    pluginManagement的配置和plugins的配置是一样的,只是用于继承,使得可以在孩子pom中使用。

    父pom:

    <build>
        ...
        <pluginManagement>
    		<plugins>
    			<plugin>
    			  <groupId>org.apache.maven.plugins</groupId>
    			  <artifactId>maven-jar-plugin</artifactId>
    			  <version>2.2</version>
    				<executions>
    					<execution>
    						<id>pre-process-classes</id>
    						<phase>compile</phase>
    						<goals>
    							<goal>jar</goal>
    						</goals>
    						<configuration>
    							<classifier>pre-process</classifier>
    						</configuration>
    					</execution>
    				</executions>
    			</plugin>
    		</plugins>
        </pluginManagement>
        ...
    </build>
    

       则在子pom中,我们只需要配置:

    <build>
        ...
        <plugins>
    		<plugin>
    			<groupId>org.apache.maven.plugins</groupId>
    			<artifactId>maven-jar-plugin</artifactId>
    		</plugin>
        </plugins>
        ...
    </build>
    

           这样就大大简化了孩子pom的配置

    展开全文
  • maven中pom文件build节点讲解.pdf
  • maven中pom文件build节点讲解

    千次阅读 2020-06-05 21:36:12
    在maven的pom.xml文件中build节点用来管理执行maven声明周期的。主要包含如下内容: <build> <finalName>test</finalName> <filters> <filter>${basedir}/filters/filter-${...

    在maven的pom.xml文件中build节点用来管理执行maven声明周期的。主要包含如下内容:

    <build>
        	<finalName>test</finalName>
        	<filters>
                <filter>${basedir}/filters/filter-${profile.active}.properties</filter>
            </filters>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                    <includes>
                        <include>*.*</include>
                        <include>**/*.properties</include>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
            <plugins>
                <plugin>
                    
                </plugin>
            </plugins>
    </build>

    下面,我们重点讲解一些节点功能:

    一、plugins节点介绍:

    1、maven-compiler-plugin、maven-resources-plugin:

    <plugin> 
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId> 
        <configuration> 
            <source>1.7</source> 
            <target>1.7</target> 
            <encoding>UTF-8</encoding> 
        </configuration> 
    </plugin>
    
    <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-resources-plugin</artifactId> 
        <version>2.3</version> 
        <configuration> 
            <encoding>UTF-8</encoding> 
        </configuration> 
    </plugin>

    通常用来设置代码文件、资源文件的字符集等。

    2、maven-dependency-plugin:

    拷贝依赖包 mvn dependency:copy-dependencies,默认会拷到项目的 target\dependency 目录,可以配置如下:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
    	    <execution>
    		    <phase>package</phase>
    			<goals>
    			  <goal>copy-dependencies</goal>
    			</goals>
    	    </execution>
        </executions>
        <configuration>
            <outputDirectory>${project.build.directory}/lib</outputDirectory>
            <excludeTransitive>false</excludeTransitive>
            <stripVersion>true</stripVersion>
        </configuration>
    </plugin>
    • outputDirectory ${project.build.directory}是maven变量,表示target目录。如果不写的话,将在根目录下创建 target\dependency 目录;
    • excludeTransitive 表示是否不包含间接依赖的包;
    • stripVersion 表示复制的jar文件去掉版本信息。(依赖的jar包都不带版本号了,例如:asm.jar,默认:asm-5.0.4.jar)

    3、maven-jar-plugin:

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-jar-plugin</artifactId>
    	<configuration>
    		<excludes> <!--资源文件不打进jar包中-->
    			<exclude>*.**</exclude>
    			<exclude>*/*.xml</exclude>
    		</excludes>
    		<archive>
    			<manifest>
    				<addClasspath>true</addClasspath>
    				<classpathPrefix>lib/</classpathPrefix>
    				<useUniqueVersions>false</useUniqueVersions><!-- 打包时 MANIFEST.MF文件不记录的时间戳版本 -->
    				<mainClass>XXX.XXX.Main</mainClass>
    			</manifest>
    		</archive>
    		<outputDirectory>${project.build.directory}</outputDirectory>
    	</configuration>
    </plugin>

    4、maven-javadoc-plugin:

    产生文档包插件

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.10.4</version>
        <configuration>  
            <aggregate>true</aggregate>  
        </configuration> 
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>jar</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

    5、maven-source-plugin:
    通过 maven-source-plugin 生产源码包插件

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.4</version>
        <configuration>  
            <attach>true</attach>  
        </configuration> 
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>jar-no-fork</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

    参考:https://www.cnblogs.com/binarylei/p/8628242.html

    二、resources节点介绍

    在开发maven项目时,通常把配置文件放到src/main/resources目录下。maven的resources节点是对配置文件的管理,将项目中的配置文件打包到jar包里,还是外面。

    1、resources一般配置:

    <finalName>test</finalName>
    <filters>
    	<filter>${basedir}/filters/filter-${profile.active}.properties</filter>
    </filters>
    <resources>
    	<resource>
    		<directory>src/main/resources</directory>
    		<targetPath>${project.build.directory}/config</targetPath>
    		<filtering>true</filtering>
    		<includes>
    			<include>**/*.conf</include>
    		</includes>
    	</resource>
    	<resource>
    		<directory>src/main/resources</directory>
    		<filtering>true</filtering>
    		<includes>
    			<include>**/*.properties</include>
    			<include>**/*.xml</include>
    		</includes>
    	</resource>
    </resources>

    这里配置了两个resource,默认的targetPath是当前路径,也就是maven打包会将配置文件打进jar中。可以通过targetPath,将配置文件复制到其他目录。不过这里要注意,如果配置文件放到了其他路径,在打包时记得classpath要指定到具体位置。

    2、filter开启替换:

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>context.xml</include>
                </includes>
            </resource>
    
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
                <excludes>
                    <exclude>context.xml</exclude>
                </excludes>
            </resource>
        </resources>
    </build>

    配置中一共有两个resource,第一个resource配置是过滤src/main/resources目录下文件context.xml,若文件中有类似${key}这样的配置,就会根据maven的配置进行覆盖,让其使用真实值来填写,至于真实值如何来,后面会具体讲。

    第二个resource配置是不过滤src/main/resources目录下除了context.xml的其他文件,也就不会用真实值来填写${key}这样的配置。

    若是<include>和<exclude>都存在的话,那就发生冲突了,这时会以<exclude>为准。

    也许有人会有疑问,若只需要过滤context.xml的话,那就只需要配置第一个resource就可以了吧。其实不然,若是只配置第一个resource,第二个不配置,那么当你运行maven打包操作后,你就会发现,在工程的classpath下只有context.xml文件了,其他配置文件都没有打过来。所以第二个resource是必不可少的,指明其他配置文件是不需要过滤的,但是同样需要打包到classpath下。

    其实filtering为true的时候,这时只会把过滤的文件打到classpath下,filtering为false的时候,会把不需要过滤的文件打到classpath下。

    还有一点需要说明,若<filtering>、<include>和<exclude>都不配置,就是把directory下的所有配置文件都放到classpath下,若这时如下配置

    <resources>
        <resource>
            <directory>src/main/resources-dev</directory>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
        </resource>
    </resources>

    会以resources-dev下的相同文件为准,不一样的文件取并集。其实这样配合下面讲的profiles也可以实现各种不同环境的自动切换。前面讲到被过滤的文件会被真实值填写文件中的${key}位置,那这些真实值来自哪里呢?这些真实值其实都来自于profiles的配置里面,如下:

    <profiles>
        <profile>
            <id>dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <config>pathConfig</config>
            </properties>
        </profile>
    </profiles>

    这段配置结合文章开头的配置,就会把context.xml文件中的${config}在打包过程中替换成pathConfig,而其他配置文件不受任何影响,利用这种特性也可以实现各种不同环境的自动切换,主要是在打包时指定使用哪个profile即可,命令如下:

    # 利用id=dev的profile配置打包
    man clean package -Pdev

    利用以上配置时,若是配置信息比较多,可能导致<properties>需要配置很多项,看起来不够简洁,这时可以利用profile的另外一个节点属性filter,可以指定文件,并使用指定文件中的配置信息来填写过滤文件的内容。配置如下:

    <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <build>
            <filters>
                <filter>config-dev.properties</filter>
            </filters>
        </build>
    </profile>

     

    展开全文
  • pom文件中build标签详解

    千次阅读 2020-04-09 11:10:45
    1.分类 (1)全局配置(project build) 针对整个项目的所有情况都有效 (2)配置(profile build) 针对不同的profile配置 ...projectxmlns="http://maven.apache.org/POM/4.0.0" xmlns:...

    前言:

       <build >设置,主要用于编译设置
     

    1.分类

    在Maven的pom.xml文件中,存在如下两种<build>:

    (1)全局配置(project build)

             针对整个项目的所有情况都有效

    (2)配置(profile build)

               针对不同的profile配置

     

    <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 https://maven.apache.org/xsd/maven-4.0.0.xsd">  
      ...  
      <!-- "Project Build" contains elements of the BaseBuild set and the Build set-->  
      <build>...</build>  
       
      <profiles>  
        <profile>  
          <!-- "Profile Build" contains elements of the BaseBuild set only -->  
          <build>...</build>  
        </profile>  
      </profiles>  
    </project>  

     

     

    说明:

    一种<build>被称为Project Build,即是<project>的直接子元素。

    另一种<build>被称为Profile Build,即是<profile>的直接子元素。

    Profile Build包含了基本的build元素,而Project Build还包含两个特殊的元素,即各种<...Directory>和<extensions>。

    2. 配置说明

    1.基本元素

    示例如下

    复制代码

    <build>  
      <defaultGoal>install</defaultGoal>  
      <directory>${basedir}/target</directory>  
      <finalName>${artifactId}-${version}</finalName> 
      <filters>
       <filter>filters/filter1.properties</filter>
      </filters> 
      ...
    </build> 

     

     

                1)defaultGoal

                        执行build任务时,如果没有指定目标,将使用的默认值。

                        如上配置:在命令行中执行mvn,则相当于执行mvn install

                  2)directory
                         build目标文件的存放目录,默认在${basedir}/target目录

                  3)finalName

                         build目标文件的名称,默认情况为${artifactId}-${version}

                  4)filter

                         定义*.properties文件,包含一个properties列表,该列表会应用到支持filter的resources中。

                         也就是说,定义在filter的文件中的name=value键值对,会在build时代替${name}值应用到resources中。

                         maven的默认filter文件夹为${basedir}/src/main/filters

     2. Resources配置

                     用于包含或者排除某些资源文件

        

     

    <build>  
            ...  
           <resources>  
              <resource>  
                 <targetPath>META-INF/plexus</targetPath>  
                 <filtering>true</filtering>  
                <directory>${basedir}/src/main/plexus</directory>  
                <includes>  
                    <include>configuration.xml</include>  
                </includes>  
                <excludes>  
                    <exclude>**/*.properties</exclude>  
                </excludes>  
             </resource>  
        </resources>  
        <testResources>  
            ...  
        </testResources>  
        ...  
    </build>  

     

     

                 

                  1)resources

                        一个resources元素的列表。每一个都描述与项目关联的文件是什么和在哪里

                  2)targetPath

                        指定build后的resource存放的文件夹,默认是basedir。

                        通常被打包在jar中的resources的目标路径是META-INF

                 3)filtering

                        true/false,表示为这个resource,filter是否激活
                 4)directory

                        定义resource文件所在的文件夹,默认为${basedir}/src/main/resources

                 5)includes

                        指定哪些文件将被匹配,以*作为通配符

                 6)excludes

                       指定哪些文件将被忽略

                 7)testResources

                       定义和resource类似,只不过在test时使用

     

      Maven多环境配置实战 filter

       目前在开发一个wap项目,主要有开发、测试和最终部署上线几个阶段,每个阶段对配置(数据库、日志)都有不同的设置。以前都是以开发环境为主,在测试和部署上线时由部署工程师负责修改配置并上线。但是公司并非都有一个项目,我们也不是只负责一个项目,这样的工作方式导致每每上线时大家都心惊胆颤,实在忍受不了折磨,决定研究下maven下如何解决这个问题。找到方案后,不敢独享,将结果向大家介绍下。思路: 
          几个环境中主要的不同可以概括为数据库配置和log日志路径配置以及外部依赖的接口配置不一样,但是我们这里简单起见,假设只考虑数据库配置。 
          这样的话,如果能实现在生成不同的发布包时对资源进行不同的替换就可以达到目的了。经过研究maven,确定了最终方案。最终方案: 
        首先需要在pom文件中确定filter和要filter的资源,这是通过在build节点中添加filter和resource来实现的,示例如下: 
      

     

     

    <filters>
        <filter>src/main/filters/filter-${env}.properties</filter> 
        </filters> 
        <resources> 
          <resource> 
            <directory>src/main/resources</directory> 
            <filtering>true</filtering> 
          </resource>    
        </resources> 

     

     

      上述配置表示要对src/main/resources下的资源进行过滤,因为该目录下没有二进制文件,所以没有excluding。过滤时采用的过滤文件为src/main/filters/filter-${env}.properties文件,其中${env}是一个变量,表示当前使用的环境,这是通过在pom文件中通过profile定义的,如下所示: 

     

    <properties>                                                                                       
      <env>dev</env> 
      </properties> 
      <profiles> 
      <profile> 
        <id>dev</id> 
        <properties> 
          <env>dev</env> 
        </properties> 
      </profile> 
      <profile> 
        <id>test</id> 
        <properties> 
          <env>test</env> 
        </properties> 
      </profile> 
      <profile> 
        <id>product</id> 
        <properties> 
          <env>product</env> 
        </properties> 
      </profile> 
    </profiles> 

     

     


      其中斜体字部分表示缺省的变量值,这样在开发时就不用每次指定这个值。在测试和部署上线时分别通过-P传入当前的profile id,这样maven就会将env变量设置为对应的值,从而导致使用不同的filter文件来对resources下的文件进行过滤替换。 
      例如:当调用maven package时传入-Pdev(因为我们将dev设置为默认,所以也可以不传)参数,则会使用 
        filter-dev.properties中的内容来替换resources目录中的配置文件,具体到我们的项目就是db.properties,内容如下: 

     
     
    ....... jdbc.connection.url=${xiangmu.jdbc.url} jdbc.connection.username=${xiangmu.jdbc.username} jdbc.connection.password=${xiangmu.jdbc.password} ............... 

     filter-dev.properties文件内容如下: 

     
     
    ................ xiangmu.jdbc.url=jdbc:mysql://localhost:3306/xiangmu?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8 xiangmu.jdbc.username=root xiangmu.jdbc.password=abcdefg ................. 

     这样在编译结束后 

     
     
    db.properties的内容就会变为: jdbc.connection.url=jdbc:mysql://localhost:3306/xiangmu?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8 jdbc.connection.username=root jdbc.connection.password=abcdefg

     

     3 plugins配置

                      用于指定使用的插件

           

     

    <build>  
        ...  
        <plugins>  
            <plugin>  
                <groupId>org.apache.maven.plugins</groupId>  
                <artifactId>maven-jar-plugin</artifactId>  
                <version>2.0</version>  
                <extensions>false</extensions>  
                <inherited>true</inherited>  
                <configuration>  
                    <classifier>test</classifier>  
                </configuration>  
                <dependencies>...</dependencies>  
                <executions>...</executions>  
            </plugin>  
        </plugins>  
    </build>  

     

      4  pluginManagement配置

              pluginManagement的配置和plugins的配置是一样的,只是用于继承,使得可以在孩子pom中使用。

           父pom:

     

     

    <build>  
        ... 
        <pluginManagement>  
            <plugins>  
                <plugin>  
                  <groupId>org.apache.maven.plugins</groupId>  
                  <artifactId>maven-jar-plugin</artifactId>  
                  <version>2.2</version>  
                    <executions>  
                        <execution>  
                            <id>pre-process-classes</id>  
                            <phase>compile</phase>  
                            <goals>  
                                <goal>jar</goal>  
                            </goals>  
                            <configuration>  
                                <classifier>pre-process</classifier>  
                            </configuration>  
                        </execution>  
                    </executions>  
                </plugin>  
            </plugins>  
        </pluginManagement>  
        ...  
    </build>  

     

     

      则在子pom中,我们只需要配置:

     

    <build>  
        ...  
        <plugins>  
            <plugin>  
                <groupId>org.apache.maven.plugins</groupId>  
                <artifactId>maven-jar-plugin</artifactId>  
            </plugin>  
        </plugins>  
        ...  
    </build>  

     

     

     这样大大简化了孩子pom的配置

    展开全文
  • pom文件中build标签报错

    千次阅读 2017-09-01 15:28:07
    pom文件中build标签报错: Multiple annotations found at this line:- CoreException: Could not calculate build plan: Plugin org.apache.maven.plugins:maven-compiler-plugin:3.1 or one of its dependencies ...


    pom文件中build标签报错:
    Multiple annotations found at this line:- CoreException: Could not calculate build plan: Plugin org.apache.maven.plugins:maven-compiler-plugin:3.1 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-compiler-plugin:jar:3.1: ArtifactResolutionException: Failure to transfer org.apache.maven.plugins:maven-compiler-plugin:pom:3.1 from https://repo.maven.apache.org/maven2/ was cached in the local repository, resolution will not be reattempted until the update interval of maven.dev.snaponglobal.com has elapsed or updates are forced. Original error: Could not transfer artifact org.apache.maven.plugins:maven-compiler-plugin:pom:3.1 from/to maven.dev.snaponglobal.com (https://repo.maven.apache.org/maven2/): java.net.ConnectException: null to https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.1/maven-compiler-plugin-3.1.pom



    问题根源:

    Failure to transfer org.apache.maven.plugins:maven-compiler-plugin:pom:3.1 from https://repo.maven.apache.org/maven2/ was cached in the local repository, resolution will not be reattempted until the update interval of maven.dev.snaponglobal.com has elapsed or updates are forced. 

    https://repo.maven.apache.org/maven2/ is not accessible.

    解决方法:修改本地maven的设置文件(settings.xml)

    <mirrors>
                <mirror>
                  <id>maven.dev.snaponglobal.com</id>
                  <name>Internal Artifactory Maven repository</name>
                  <url>https://repo.maven.apache.org/maven2/</url>
                  <mirrorOf>*</mirrorOf>
                </mirror>
      </mirrors>

    将mirror标签注释掉:

      <mirrors>
        <!-- 
                <mirror>
                  <id>maven.dev.snaponglobal.com</id>
                  <name>Internal Artifactory Maven repository</name>
                  <url>https://repo.maven.apache.org/maven2/</url>
                  <mirrorOf>*</mirrorOf>
                </mirror>
            -->
      </mirrors>


    by Mike Sun @ 20170901 Friday



    展开全文
  • pom中build/plugin标签

    千次阅读 2019-09-17 09:16:44
    https://blog.csdn.net/cpf2016/article/details/45674377
  • pom.xml中build标签

    千次阅读 2018-05-28 15:40:19
    1.分类 (1)全局配置(project build) 针对整个项目的所有情况都有效 (2)配置(profile build) 针对不同的profile配置[html] view plain copy&lt;project xmlns="...
  • build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </...
  • 本文主要阐述了maven build是用来干什么的,以及对build标签各子元素配置的作用
  • Maven之pom.xml文件Build配置

    万次阅读 2019-03-08 17:29:50
    Maven之pom.xml文件Build配置 前言 在日常的开发,我们经常使用maven来管理和构建我们的项目,即使现在使用了各种springboot等方便快捷的框架,jar包的引入也是通过maven来进行的,因此有必要了解pom.xml文件的...
  • Maven的pom.xml文件中build配置介绍

    千次阅读 2017-04-15 11:31:05
    原文地址:... 在Maven的pom.xml文件Build相关配置包含两个部分,一个是,另一个是,这里我们只介绍。 1. 在Maven的pom.xml文件,存在如下两种: [html] view plain copy   p
  • POM.XML的build标签resources标签

    万次阅读 2018-12-19 12:03:43
    pom.xml的两种build 在Maven的pom.xml文件,存在如下两种&lt;build&gt;: 说明: 一种&lt;build&gt;被称为Project Build,即是&lt;project&gt;的直接子元素。另一种&lt;build&...
  • maven ,Pom.xml中build下的resources

    千次阅读 2019-04-11 15:48:24
    原文:... maven的Pom.xml中build下的resources,一直不太理解,现在总结一下。 resources:描述工程资源的位置 <resource> <targetPath>META-INF/plexus</t...
  • pom.xmlbuild标签的resources标签

    千次阅读 2020-06-04 15:30:46
    pom.xmlbuild标签的resources标签: resources标签是指定读取的配置文件或文件夹的文件 resources标签内容需配置在<build></build> 一、最简单的 <resource> <directory>src/main/...
  • Maven中Pom文件打包配置build

    千次阅读 2017-09-18 16:41:07
    摘自:https://my.oschina.net/simpleton/blog/607776 方法一 ###架包名### src/main/java src/main/resources ${project.build.directory}
  • 1.看一段pom.xml文件的build <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4....
  • pom.xml build src文件夹设置

    千次阅读 2017-10-11 15:06:03
    pom.xml build文件夹设置如下: ${basedir}/src/main/java ${basedir}/target/classes ${basedir}/src/main/java **/*.java ${basedir}/src/main/resources
  • maven pom文件之 build设置

    千次阅读 2012-11-07 14:41:19
    build
  • Maven的pom.xml文件结构之Build配置build

    万次阅读 多人点赞 2016-08-31 09:43:30
    在Maven的pom.xml文件Build配置包含两个部分,一个是,另一个是,这里我们只介绍。 1. 在Maven的pom.xml文件,存在如下两种: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=...
  • ${basedir}/src/main/java ${basedir}/target/classes ${basedir}/src/main/java **/*.java ${basedir}/src/main/resources

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 196,857
精华内容 78,742
关键字:

pom中的build