精华内容
下载资源
问答
  • mvn test --file pom.xml 之前一直正常,今天突然编译失败 另一台测试环境今天编译部署正常(mvn install)。 报错 本来拍了图片,奈何公司远程办公,所有页面全加了水印,具体描述如下: [info] — maven-...
    1. 背景
    • maven项目
    • 在jenkins上跑单元测试
    • mvn test --file pom.xml
    • 之前一直正常,今天突然编译失败
    • 另一台测试环境今天编译部署正常(mvn install)。
    1. 报错
      本来拍了图片,奈何公司远程办公,所有页面全加了水印,具体描述如下:
      [info] — maven-resource-plugin:2.6:resource (default-resources) @ (一个模块) —
      [info] Using ‘UTF-8’ encoding to copy filtered resources.
      [info] skip non existing resourceDirectory **************(该模块下的源码路径,经对比该路径下确实没有东西,甚至该路径对应的文件夹都没有)
      [info]
      [info] —maven-compile-plugin:3.1:compile(default-compile) @ (一个模块) —
      [info] Toolchain in compile-plugin:JDK[D:\DEV\ibm]
      [info] Changes detected -ecompiling the module!
      [info] Compiling 10 source file to ******** [上面源码路径对应的编译目标路径]
      [info] ---------------------------
      [ERROR] compilation error:
      [info] ---------------------------
      [ERROR] javac: 无源文件
      用法: javac

    2. 解决

    • 重启了slave机解决
    1. 分析流程
    • 根据报错提示,首先百度了 skip non existing resourceDirectory,没看出个所以然;网上的基本都是jdk配置不对,或者pom文件配置不对;可是同样的代码之前可以,另一台机器可以;这台机器任何配置都没有更改
    • 在slave机上直接mvn compile 报同样的错(因为mvn test 就包含了mvn compile)
    • 既然这个模块编译报错,那就跳过这个模块,看下面会不会有问题;该Maven项目有三个模块,记为 A,B,C,报错的是A,但是所有的代码都是在C里,所以直接编译C(起码不会找不到文件啊),mvn compile -pl C
    • 果然报错,报错的原因很明确,no space,没空间了
    • 关机重启释放了部分空间,在按照原有编译流程,果然不报错了
    1. 总结
      你看到的错不一定就是真正的错啊
    展开全文
  • mvn release 配置说明

    2016-12-03 10:50:53
    mvn release 配置说明   1、配置setting.xml 在setting.xml增加server my-scm-server,对应的用户名、密码为git的用户名密码  <server>  <id>my-scm-server</id&gt...

    mvn release 配置说明

     

    1、配置setting.xml

    setting.xml增加server

    my-scm-server,对应的用户名、密码为git的用户名密码

     <server>

               <id>my-scm-server</id>  

                 <username>******</username>  

                  <password>******</password>  

               </server>  

    2、配置本项目中pom.xml

    <!--[if !supportLists]-->1) <!--[endif]-->本地开发版本必须快照版本

      <version>0.0.1-SNAPSHOT</version>

    <!--[if !supportLists]-->2) <!--[endif]-->- 配置 project.scm.id 对应setting文件中my-scm-server

     

    <project.scm.id>my-scm-server</project.scm.id>

     

    <!--[if !supportLists]-->3) <!--[endif]-->scm配置

     

    <!-- 配置代码git路径 -->

    <scm>

    <connection>scm:git:https://git.coding.net/******/common.settlement.sdk.git</connection>

    <url>https://git.coding.net/******/common.settlement.sdk.git</url>

    <developerConnection>scm:git:https://git.coding.net/******/common.settlement.sdk.git</developerConnection>

    <tag>1</tag>

    </scm>

     

    <!--[if !supportLists]-->4) <!--[endif]-->增加maven-release-plugin插件

    <plugins>

     

    <!-- 发布源码到nexus-->

    <plugin>

    <artifactId>maven-source-plugin</artifactId>

    <version>2.1</version>

    <configuration>

    <attach>true</attach>

    </configuration>

    <executions>

    <execution>

    <phase>compile</phase>

    <goals>

    <goal>jar</goal>

    </goals>

    </execution>

    </executions>

    </plugin>

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-javadoc-plugin</artifactId>

    <configuration>

    <additionalparam>-Xdoclint:none</additionalparam>

    </configuration>

    </plugin>

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-release-plugin</artifactId>

    <version>2.5.3</version>

    <configuration>

    <tagNameFormat>v@{project.version}</tagNameFormat>

    <autoVersionSubmodules>true</autoVersionSubmodules>

    <releaseProfiles>releases</releaseProfiles>

    </configuration>

    </plugin>

    <plugin>

    <groupId>org.sonatype.plugins</groupId>

    <artifactId>nexus-staging-maven-plugin</artifactId>

    <version>1.5.1</version>

    <executions>

    <execution>

    <id>default-deploy</id>

    <phase>deploy</phase>

    <goals>

    <goal>deploy</goal>

    </goals>

    </execution>

    </executions>

    <configuration>

    <serverId>nexus</serverId>

    <nexusUrl>http://api.******.com/nexus/</nexusUrl>

    <skipStaging>true</skipStaging>

    </configuration>

    </plugin>

    </plugins>

    <!--[if !supportLists]-->5) <!--[endif]-->增加部署配置

    <distributionManagement>

    <repository>

    <id>releases</id>

    <url>http://api.*****.com/nexus/content/repositories/releases</url>

    </repository>

    </distributionManagement>

     

    3、命令执行

    <!--[if !supportLists]-->1)<!--[endif]-->登陆 115.28.58.**

    <!--[if !supportLists]-->2)<!--[endif]-->把代码clone到服务器

    如果代码在主干上,直接clone主干

    git clone https://username:password@git.coding.net/******/common.settlement.sdk.git

    分支的需要clone分支

    git clone -b test https://username:password@git.coding.net/******/common.settlement.sdk.git

    3)clone的目录下执行 release 命令

     mvn release:clean release:prepare release:perform

    maven-release-plugin会自动帮我们签出刚才打的tag,然后打包,分发到远程Maven仓库中,至此,整个版本的升级,打标签,发布等工作全部完成。我们可以在远程Maven仓库中看到正式发布的1.0版本。

     

     

     

    展开全文
  • MVN 安装配置

    千次阅读 2014-03-08 22:24:25
    1、下载和安装maven 注:在使用之前,应首先安装JDK。...#可以去共用目录中下载,下载完后解压到指定的目录中,如C:\Program Files\apache-maven-2.2.0 ...#配置环境变量:1)MAVEN_HOME: 你安装的Maven的目

    http://blog.sina.com.cn/s/blog_9ba71d0b010152qd.html


    1、下载和安装maven

    注:在使用之前,应首先安装JDK。

    #可以去共用目录中下载,下载完后解压到指定的目录中,如C:\Program Files\apache-maven-2.2.0

    #配置环境变量:1)MAVEN_HOME: 你安装的Maven的目录,如C:\Program Files\apache-maven-2.2.0

    #在Path 中加入%MAVEN_HOME%\bin

    配置完之后,在命令窗口中使用mvn –version 会出现如下信息

    此时,maven已经安装配置好了。

    2、使用maven来构建项目,从源代码编译成二进制项目文件

    用maven对项目打包,比如用svn下载项目从

        svn://10.0.0.58:8000/java/materias/poc/maven/core/,下载到指定的目录,比如放在E:\workspace\java\materias\poc\maven\core目录下

    项目的结构如下:

    包括src源代码目录,unit test源码目录,以及配置文件目录resources

    打开命令窗口,用cd命令转到项目所在的目录下

    运行mvn compile,假如下现如下的结果,则该命令运行成功。

    该命令是用来编译所有的的(java)源文件,编译后生成所有的class文件放在根目录下的target\classes目录下,即如

    除此之外,maven还有很多其他常用的命令方式,比如:

    *mvn test-compile //编译测试代码,比如编译test下的源文件,编译后生成的所有的class文件放在根目录下的target\test-classes目录下

    *mvn test //运行应用程序中的单元测试,比如对以上的项目,测试生成的结果放在根目录下的target\surefire-reports目录下,

    *mvn clean //清除目标目录中的生成结果 delete target,即会清除生成的target目录

    *mvn package //依据项目生成 jar或者war/sar文件,比如对以上的项目,生成的包文件会放在根目录下的target\目录下的core-1.0.jar文件,这里要注意的是运行了mvn package命令以后,对于这之前的操作(包括mvn compile,mvn test-compile,mvn test)命令,都会自动运行

    *mvn install // 在本地 Repository 中安装 jar或者war //,即将生成的jar或者war放在本地的Repository中,这里要说明的是,maven中默认的Repository是在C:\Documents and Settings\(当前系统用户的名称)\.m2\repository目录下,我们也可以人为的将它存放在指定的目录下,步骤是打开maven的安装目录,打开conf\下的settings.xml文件,修改其中的<localRepository>,比如将其修改为中间就是所要指定的目录,如对以上的项目,执行了mvn install项目后,不仅在根目录下生成target\目录,同时还会将生成的jar文件存放到Repository中,即E:/app/m2/repository中

    *mvn site //生成项目相关信息的网站

    mvn eclipse:eclipse //生成Eclipse 项目文件及包引用定义,注意,需确保定义Classpath Variables: M2_REPO,指向本地maven类库目录。执行完了后,就可以将源码项目导入elipse。

    mvn eclipse:clean   //清除Eclipse 项目文件及包引用定义文件。

    如果想要跳过测试,则加上-Dmaven.test.skip=true参数,如:mvn install -Dmaven.test.skip=true。

    3、mvn的运行简单机制

    通过pom.xml来进行构建。 比如Pom.Xml以上项目中的pom.xml文件

    <modelVersion> --描述这个POM文件遵从哪个版本的项目描述符;

    <groupId> -- 针对一个项目的普贤遍唯一识别符。通常用一个完全正确的包的名字来与其他项目的类似名字来进行区分;比如以上的项目,生成的(java)源文件会放在根目录下的\target\classes\com\sunvalley\demo中,\com\sunvalley\demo便是这里<groupId>所唯一标识的;

    <artifactId> -- 项目的通用名称

    <packaging> -- 打包扩展名(JAR、WAR、EAR),举个例子jar,war,pom Plugings能够创建他们自己的包,包括包的类型;比如以上的项目生成的core-1.0.jar文件

    <name> -- 当前项目的全称;

    <version> --当前项目产生的artifact的当前版本;

       <description> -- 当前项目的一个细节描述;

    除此之外还有一些其它的元素,如<dependencies>

       <dependencies>这个元素描述了所有与当前项目相关的依赖。

    <dependencies>

         <dependency>        可以配置多个相关的依赖

          <groupId>activation</groupId> 所依赖组件的标识符

          <version>1.0.1</version> 所依赖组件的版本

          <properties>    所依赖组件的属性

            <war.bundle.jar>true</war.bundle.jar>

          </properties>

         </dependency>

    </dependencies>

    比如以上项目中的

    这是在以上项目中进行unit test所要用到的一个工具junit。groupId是该组件的标识符,artifactId表示该组件的通用名称,version表示该组件的版本,scope:用于限制相应的依赖范围,还有其他的几种范围如

    compaile :默认范围,用于编译

    runtime:在执行时,需要使用

    test:用于test任务时使用

    此外在<dependencies>中可以配置多个<dependency>,即多个组件的配置

    4、Maven-proxy的使用

    #maven-proxy的作用

    maven-proxy是你访问maven仓库(repository)的代理,它可以连接多个maven仓库,但对你来说,你只需要知道maven-proxy就够了。

    更重要的是,maven-proxy可以看作是maven仓库在你本地的缓存,这在团队开发的时候会节省下载jar包的时间。比如,你的团队有10个人,默认的情况下maven repository的服务器为 ,这个 可能访问很慢。开发中,10个人都需要分别连接 下载。现在你本地假设了一个maven-proxy B。所有的人都直接连接B。这样,只有第一个人在下载时,B会从 下载jar包,同时缓存,其他9个人只需要从B下载就够了。那么如何让B来访问 呢

    #配置代理

    ##打开安装maven的目录下的conf目录下的settings.xml文件

    ##配置其中的<profiles>…</profiles>和<activeProfiles>…</activeProfiles>元素,如将它们配置为如下:其中的<url>就是服务器所在的url,注<profile>里的<id>与<activeProfiles>中的<activeProfile>对应。

    ##保存后,将配置好的settings.xml文件拷贝到本地的repository仓库的同级目录下,比如说放在E:\app\m2

    ##此时,重新启动该服务器,之后对以上的项目(从SVN下载下来的项目)进行打包,即如该项目放在E:\workspace\java\materias\poc\maven\core目录下,重新打开一个命令窗口,用cd命令转到该目录下,执行mvn compile即编译该项目的命令,此时会出现像如下的结果:

    这说明已经成功的在服务器上download了文件oscache-2.4.jar,到这里就已经代理成功了,如要访问其它的服务器,只需在配置settings.xml文件的时候,服务器的全称改为此服务器的全称即可,如:

    <url>的中间便是所要访问服务器的全称。

    注:有关于服务器的设置请参看有关的附录。

    5、解决Maven内存溢出的问题

        找到文件%MAVEN_HOME%\bin\mvn.bat,这就是启动Maven的脚本文件,找到该文件中以下代码所在的行:

    @REM set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE...

        它的意思是你可以设置一些Maven参数,我们就在该行下面加入以下行:

    set MAVEN_OPTS= -Xms256m -Xmx512m

        上述设置表示Java堆得大小范围为256M-512M,经过上述设置之后,当再运行Maven命令如 mvn -version的时候,你会看到如下的输出:

    c:\>mvn -versionc:\>set MAVEN_OPTS= -Xms128m -Xmx512m.......

    6、忽略失败

    当你运行一个Maven构建的时候,它会包含一系列的项目,每个项目可以成功或者失败。你可以三种可选的失败模式:

    mvn -ff

    最快失败模式:Maven会在遇到第一个失败的时候失败(停止)。

    mvn -fae

    最后失败模式:Maven会在构建最后失败(停止)。如果Maven refactor中一个失败了,Maven会继续构建其它项目,并在构建最后报告失败。

    mvn -fn

    从不失败模式:Maven从来不会为一个失败停止,也不会报告失败。


    展开全文
  • 首先这段是给mvn用来指定哪个环境的,尽管这里写了默认dev生效,但是最终决定权还在mvn手里 &lt;profiles&gt; &lt;profile&gt; &lt;id&gt;dev&lt;/id&gt; &lt;activation&...
    首先这段是给mvn用来指定哪个环境的,尽管这里写了默认dev生效,但是最终决定权还在mvn手里
    <profiles>
        <profile>
            <id>dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <package.environment>config/dev</package.environment>
            </properties>
        </profile>
        <profile>
            <id>test</id>
            <properties>
                <package.environment>config/test</package.environment>
            </properties>
        </profile>
        <profile>
            <id>product</id>
            <properties>
                <package.environment>config/product</package.environment>
            </properties>
        </profile>
    </profiles>

    下面这个插件是mvn帮助我们将指定环境配置文件拷贝到target下的classes目录,需要手动运行compile或者install才会执行

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <executions>
            <execution>
                <id>copy-resources</id>
                <phase>generate-resources</phase>
                <goals>
                    <goal>copy-resources</goal>
                </goals>
                <configuration>
                    <overwrite>true</overwrite>
                    <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                    <resources>
                        <resource>
                            <directory>src/main/resources/${package.environment}</directory>
                            <filtering>false</filtering>
                        </resource>
                    </resources>
                </configuration>
            </execution>
        </executions>
    </plugin>

     

    所以如果不执行那两个mvn命令配置文件是不会做拷贝的,也就不会生效,切记!!!

    展开全文
  • mvn 配置

    2014-02-27 12:42:10
    1、下载和安装maven 注:在使用之前,应首先安装JDK。 ...#配置环境变量:1)MAVEN_HOME: 你安装的Maven的目录,如C:\ProgramFiles\apache-maven-2.2.0 #在Path 中加入%MAVEN_HOME%\bin 配置
  • 报错现象:运行 mvn compile 报错[INFO] BUILD FAILURE 报错原因:是联通网络下,无法访问maven.org网站。 解决方法理论上有两个:1.在maven的配置文件中设置代理,2.在maven的配置文件中设置联通网络下,能够访问...
  • 报错原因:maven项目目录结构不对 一般结构为:注意:src与target(可以不用新建,编译完会自己生成)和pom文件三个是同目录下的,我开始就是在这个地方写错了 ... resources 资源文件(配置文件...
  • 1、配置mvn: 点击链接 http://maven.apache.org/download.cgi 下载 解压到文件夹; 配置系统环境变量; 测试:mvn -v 2、mvn命令: 1.显示版本信息 : mvn -version/-v 2.创建mvn项目: mvn ...
  • mvn 环境配置 及常用命令

    千次阅读 2012-05-02 20:31:19
    1、下载mavan安装文件(apache-maven-2.2.1)(http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-2.2.1-bin.zip),解压缩至D盘根目录下; 2、新建环境变量:MVN_HOME值为:D:\apache-maven-...
  • 每一个maven工程(比如web项目),开发人员在开发时,会使用一种配置文件,比如数据库配置,而测试环境可能使用另一种配置文件。 打包完成后,手动调整配置文件,工作重复度很高,可以实现maven根据参数区分不同的...
  • Maven指令执行失败 一,若是mvn -v 指令失败 二,执行mvn compilemvn package等指令失败
  • 目录背景场景解决办法扩展参考 背景 利用mvn clean package...因为mvn clean package是success的,没有报错,无法知道错误的原因,所以执行mvn -X查看可能导致失败的原因。错误如下: 本文的错误在于No goals have b...
  • !...所有的mvn命令都会出现这个错误,百度找了几种原因和方法 1 网络问题,这个原因可以排除 2增加一个,删除m2目录下的文件重试,还是出现错误 ...或者问题不是因为无法下载相应的jar包,是配置文件有错?
  • 方法:删掉idea生成的 .iml 文件,然后执行mvn idea:module重新生成 以下为过程记录: 首先是git clone项目,然后idea打开,等项目加载完后,一堆报错,找不到类,还项目结构也是乱的。 然后用命令行执行mvn clean ...
  • 第一次用maven创建项目,运行mvn compile报错 [ERROR] Plugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of its dependencies could not be resolved: Failed to read artifact descriptor for ...
  • mvn compile时报错:javac:invalid target release: 1.7 Add the following to your pom under build and plugins it should target 1.6 org.apache.maven.plugins maven-compiler-plugin 1.6 ...
  • mvn学习

    2015-08-23 22:05:32
    阅读的书籍 1 mvn 的 ~/.m2/.. 路径下放了各个类库的文件。 2. mvn 简单入门: mvn clean 清理 mvn compile 编译 ...mvn test ...mvn package ...mvn install ...3. pom.xml配置文件 groupId artifactId
  • mvn

    2014-11-13 10:53:03
    创建Maven的普通java项目: mvn archetype:create -DgroupId=packageName -DartifactId=projectName 2. 创建Maven的Web项目: mvn archetype:create -DgroupId=packageName -DartifactI...
  • 概述:mac上 mvn compile 失败,提示工程jdk版本低,但之前都可以。 原因:jdk版本变成14导致 (mac,最近安装了jdk14,java_home默认选择最高的jdk版本) 最近写项目,编译的时候发现使用 mvn clean compile 编译...
  • compile:编译命令,只编译选定的目标,不管之前是否已经编译过,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。 package:这个命令会在你的项目...
  • 精通Dubbo——Dubbo配置文件详解

    万次阅读 多人点赞 2017-06-01 22:44:35
    缺省依赖(系统默认)通过mvn dependency:tree > dep.log命令(Eclipse或Linux命令行)分析,Dubbo缺省依赖以下三方库:[INFO] +- com.alibaba:dubbo:jar:2.1.2:compile [INFO] | +- log4j:log4j:
  • 背景: 1,生成3个目录/lib,/conf,/bin目录 2,把所有的jar目录编译、拷贝...4,把所有的配置文件从src/main/resources拷贝到/conf 下面是配置的pom.xml,相关的配置都加了注释,一看就能明白,把build节点拷贝...
  • -- 一般而言,target与source是保持一致的,但是,有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk,源代码中需要没有使用低版本jdk中不支持的语法),会存在target不同于source的情况 --> <!-- 这...
  • #可以去共用目录中下载,下载完后解压到指定的目录中,如C:\Program Files\apache-maven-2.2.0#配置环境变量:1)MAVEN_HOME: 你安装的Maven的目录,如C:\Program Files\apache-maven-2.2.0#在Path 中加入%MAVEN_HOME...
  • mvn build jar

    2018-03-13 16:48:30
    使用mvn打可运行的jar, 前提是要先装好mvn配置好环境变量。 cmd到project工程目录下, mvn clean : 删除target目录内容,清理打包痕迹 。 mvn compile 编译项目,查看是否有语法或者依赖问题 。 mvn package ...
  • maven(一)--mvn安装、配置、基本命令

    千次阅读 2018-07-25 20:50:40
    mvn compile 编译项目,首次编译可能较慢,因为maven会下载很多插件,推荐配置下maven国内镜像。 cd target\classes\ 进入classes目录 java com.tingcream.helloMaven.App 运行App,输出 Hello World...
  • pom.xml配置文件中所有标签及作用简单描述

    千次阅读 多人点赞 2017-03-21 18:26:02
    我转载的是关于pom.xml文件中会使用到的基本上所有的标签以及标签的作用简单描述。 可能我们自己的项目所使用到的标签总数量不及此文的一半。 我转载仅为方便你我他学习之用,众喷子们,还请指下留情,轻喷。 因为此...
  • Emacs 配置文件管理

    千次阅读 2012-09-22 10:22:03
    在emacs配置文件都写在一个.emacs 文件中 管理很麻烦,我们可以用provide 关键词把配置文件中的内容分好类,写到不同的配置文件中 如我的插件文件为/root/emacs 配置文件为/root/.emacs 分类后的文件目录在 /...
  • mvn常用命令

    2017-07-20 18:38:56
    maven //clean compile test package ...mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编译测试源代码 mvn test 运行应用程序中的单元测试 mvn site 生成项目相关信息的网站 mvn clean 清除项目目

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,641
精华内容 8,656
关键字:

compilemvn没有配置文件