精华内容
下载资源
问答
  • maven打包后缀

    千次阅读 2017-12-27 11:34:50
    【技术贴】Maven打包文件增加时间后缀   构建war包,或者jar包的,时候,maven会自动增加一个版本号和时间放在jar包后面比如poi-3.9-20131115.jar这样子,但是我自己打war包,总是给我生成一个快照的后缀...

    【技术贴】Maven打包文件增加时间后缀

     

    构建war包,或者jar包的,时候,maven会自动增加一个版本号和时间放在jar包后面比如poi-3.9-20131115.jar这样子,但是我自己打war包,总是给我生成一个快照的后缀report-0.0.1-SNAPSHOT.war这个样子,所以我想干掉这个后缀,或者说我什么都不用,那么本篇教程围绕3个问题展开。

    1.后缀什么都不加,需要在build节点下跟上一个<finalName>节点即可。生成的war包或者jar包不含任何杂余。

    打包结果:report.war

    <build>
            <finalName>report</finalName>
     </build>

     

    2. 后缀跟上时间戳,这个需要在<finalName>节点下使用maven的内置变量maven.build.timestamp,会生成带时间戳的war包

    打包结果:report-20131115-1450.war

    <build>
        <finalName>${project.artifactId}-${maven.build.timestamp}</finalName>
    </build>

    还有一种方法,使用maven的插件,buildnumber-maven-plugin

    复制代码
    <finalName>${project.artifactId}-${project.version}-${buildNumber}</finalName>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>buildnumber-maven-plugin</artifactId>
      <version>1.0-beta-4</version>
      <executions>
        <execution>
          <phase>initialize</phase>
          <goals>
            <goal>create</goal>
          </goals>
        </execution>
      </executions>
      <configuration>
        <doCheck>false</doCheck>
        <doUpdate>false</doUpdate>
        <revisionOnScmFailure/>
        <format>{0,date,yyyyMMdd}</format>
        <items>
          <item>timestamp</item>
        </items>
      </configuration>
    </plugin>
    复制代码

     

    3.后缀跟上快照号

    在dependencies节点之前的version节点下写入即可。

    复制代码
    <groupId>com.riambsoft</groupId>
        <artifactId>report</artifactId>
        <packaging>war</packaging>
        <!-- 快照
        <version>0.0.1-SNAPSHOT</version>-->
    <!-- 后缀时间 -->
        <version>${maven.build.timestamp}</version>
        <name>report</name>
        <url>http://www.riambsoft.com</url>
        <dependencies>

    展开全文
  • Maven打包技巧

    千次阅读 2020-12-20 00:03:48
    打包“这个词听起来比较土,比较正式的说法应该是”构建项目软件包“,具体说就是将...作为一款”打包工具“,Maven自然有义务帮助用户创建各种各样的包,规范的JAR包和WAR包自然不再话下,略微复杂的自定义打包...

    “打包“这个词听起来比较土,比较正式的说法应该是”构建项目软件包“,具体说就是将项目中的各种文件,比如源代码、编译生成的字节码、配置文件、文档,按照规范的格式生成归档,最常见的当然就是JAR包和WAR包了,复杂点的例子是,它有自定义的格式,方便用户直接解压后就在命令行使用。作为一款”打包工具“,Maven自然有义务帮助用户创建各种各样的包,规范的JAR包和WAR包自然不再话下,略微复杂的自定义打包格式也必须支持,本文就介绍一些常用的打包案例以及相关的实现方式,除了前面提到的一些包以外,你还能看到如何生成源码包、Javadoc包、以及从命令行可直接运行的CLI包。

    Packaging的含义

    任何一个Maven项目都需要定义POM元素packaging(如果不写则默认值为jar)。顾名思义,该元素决定了项目的打包方式。实际的情形中,如果你不声明该元素,Maven会帮你生成一个JAR包;如果你定义该元素的值为war,那你会得到一个WAR包;如果定义其值为POM(比如是一个父模块),那什么包都不会生成。除此之外,Maven默认还支持一些其他的流行打包格式,例如ejb3和ear。你不需要了解具体的打包细节,你所需要做的就是告诉Maven,”我是个什么类型的项目“,这就是约定优于配置的力量。

    为了更好的理解Maven的默认打包方式,我们不妨来看看简单的声明背后发生了什么,对一个jar项目执行mvn package操作,会看到如下的输出:

    [INFO] --- maven-jar-plugin:2.3.1:jar (default-jar) @ git-demo ---

    [INFO] Building jar: /home/juven/git_juven/git-demo/target/git-demo-1.2-SNAPSHOT.jar

    相比之下,对一个war项目执行mvn package操作,输出是这样的:

    [INFO] --- maven-war-plugin:2.1:war (default-war) @ webapp-demo ---

    [INFO] Packaging webapp

    [INFO] Assembling webapp [webapp-demo] in [/home/juven/git_juven/webapp-demo/target/webapp-demo-1.0-SNAPSHOT]

    [INFO] Processing war project

    [INFO] Copying webapp resources [/home/juven/git_juven/webapp-demo/src/main/webapp]

    [INFO] Webapp assembled in [90 msecs]

    [INFO] Building war: /home/juven/git_juven/webapp-demo/target/webapp-demo-1.0-SNAPSHOT.war

    对应于同样的package生命周期阶段,Maven为jar项目调用了maven-jar-plugin,为war项目调用了maven-war-plugin,换言之,packaging直接影响Maven的构建生命周期。了解这一点非常重要,特别是当你需要自定义打包行为的时候,你就必须知道去配置哪个插件。一个常见的例子就是在打包war项目的时候排除某些web资源文件,这时就应该配置maven-war-plugin如下:

    org.apache.maven.plugins

    maven-war-plugin

    2.1.1

    src/main/webapp

    **/*.jpg

    源码包和Javadoc包

    本专栏的《坐标规划》一文中曾解释过,一个Maven项目只生成一个主构件,当需要生成其他附属构件的时候,就需要用上classifier。源码包和Javadoc包就是附属构件的极佳例子。它们有着广泛的用途,尤其是源码包,当你使用一个第三方依赖的时候,有时候会希望在IDE中直接进入该依赖的源码查看其实现的细节,如果该依赖将源码包发布到了Maven仓库,那么像Eclipse就能通过m2eclipse插件解析下载源码包并关联到你的项目中,十分方便。由于生成源码包是极其常见的需求,因此Maven官方提供了一个插件来帮助用户完成这个任务:

    org.apache.maven.plugins

    maven-source-plugin

    2.1.2

    attach-sources

    verify

    jar-no-fork

    类似的,生成Javadoc包只需要配置插件如下:

    org.apache.maven.plugins

    maven-javadoc-plugin

    2.7

    attach-javadocs

    jar

    为了帮助所有Maven用户更方便的使用Maven中央库中海量的资源,中央仓库的维护者强制要求开源项目提交构件的时候同时提供源码包和Javadoc包。这是个很好的实践,读者也可以尝试在自己所处的公司内部实行,以促进不同项目之间的交流。

    可执行CLI包

    除了前面提到了常规JAR包、WAR包,源码包和Javadoc包,另一种常被用到的包是在命令行可直接运行的CLI(Command Line)包。默认Maven生成的JAR包只包含了编译生成的.class文件和项目资源文件,而要得到一个可以直接在命令行通过java命令运行的JAR文件,还要满足两个条件:

    JAR包中的/META-INF/MANIFEST.MF元数据文件必须包含Main-Class信息。

    项目所有的依赖都必须在Classpath中。

    Maven有好几个插件能帮助用户完成上述任务,不过用起来最方便的还是maven-shade-plugin,它可以让用户配置Main-Class的值,然后在打包的时候将值填入/META-INF/MANIFEST.MF文件。关于项目的依赖,它很聪明地将依赖JAR文件全部解压后,再将得到的.class文件连同当前项目的.class文件一起合并到最终的CLI包中,这样,在执行CLI JAR文件的时候,所有需要的类就都在Classpath中了。下面是一个配置样例:

    org.apache.maven.plugins

    maven-shade-plugin

    1.4

    package

    shade

    com.juvenxu.mavenbook.HelloWorldCli

    上述例子中的,我的Main-Class是com.juvenxu.mavenbook.HelloWorldCli,构建完成后,对应于一个常规的hello-world-1.0.jar文件,我还得到了一个hello-world-1.0-cli.jar文件。细心的读者可能已经注意到了,这里用的是cli这个classifier。最后,我可以通过java -jar hello-world-1.0-cli.jar命令运行程序。

    自定义格式包

    实际的软件项目常常会有更复杂的打包需求,例如我们可能需要为客户提供一份产品的分发包,这个包不仅仅包含项目的字节码文件,还得包含依赖以及相关脚本文件以方便客户解压后就能运行,此外分发包还得包含一些必要的文档。这时项目的源码目录结构大致是这样的:

    pom.xml

    src/main/java/

    src/main/resources/

    src/test/java/

    src/test/resources/

    src/main/scripts/

    src/main/assembly/

    README.txt

    除了基本的pom.xml和一般Maven目录之外,这里还有一个src/main/scripts/目录,该目录会包含一些脚本文件如run.sh和run.bat,src/main/assembly/会包含一个assembly.xml,这是打包的描述文件,稍后介绍,最后的README.txt是份简单的文档。

    我们希望最终生成一个zip格式的分发包,它包含如下的一个结构:

    bin/

    lib/

    README.txt

    其中bin/目录包含了可执行脚本run.sh和run.bat,lib/目录包含了项目JAR包和所有依赖JAR,README.txt就是前面提到的文档。

    描述清楚需求后,我们就要搬出Maven最强大的打包插件:maven-assembly-plugin。它支持各种打包文件格式,包括zip、tar.gz、tar.bz2等等,通过一个打包描述文件(该例中是src/main/assembly.xml),它能够帮助用户选择具体打包哪些文件集合、依赖、模块、和甚至本地仓库文件,每个项的具体打包路径用户也能自由控制。如下就是对应上述需求的打包描述文件src/main/assembly.xml:

    bin

    zip

    true

    lib

    /

    README.txt

    src/main/scripts

    /bin

    run.sh

    run.bat

    首先这个assembly.xml文件的id对应了其最终生成文件的classifier。

    其次formats定义打包生成的文件格式,这里是zip。因此结合id我们会得到一个名为hello-world-1.0-bin.zip的文件。(假设artifactId为hello-world,version为1.0)

    dependencySets用来定义选择依赖并定义最终打包到什么目录,这里我们声明的一个depenencySet默认包含所有所有依赖,而useProjectArtifact表示将项目本身生成的构件也包含在内,最终打包至输出包内的lib路径下(由outputDirectory指定)。

    fileSets允许用户通过文件或目录的粒度来控制打包。这里的第一个fileSet打包README.txt文件至包的根目录下,第二个fileSet则将src/main/scripts下的run.sh和run.bat文件打包至输出包的bin目录下。

    打包描述文件所支持的配置远超出本文所能覆盖的范围,为了避免读者被过多细节扰乱思维,这里不再展开,读者若有需要可以去参考这份文档。

    最后,我们需要配置maven-assembly-plugin使用打包描述文件,并绑定生命周期阶段使其自动执行打包操作:

    org.apache.maven.plugins

    maven-assembly-plugin

    2.2.1

    src/main/assembly/assembly.xml

    make-assembly

    package

    single

    运行mvn clean package之后,我们就能在target/目录下得到名为hello-world-1.0-bin.zip的分发包了。

    小结

    打包是项目构建最重要的组成部分之一,本文介绍了主流Maven打包技巧,包括默认打包方式的原理、如何制作源码包和Javadoc包、如何制作命令行可运行的CLI包、以及进一步的,如何基于个性化需求自定义打包格式。这其中涉及了很多的Maven插件,当然最重要,也是最为复杂和强大的打包插件就是maven-assembly-plugin。事实上Maven本身的分发包就是通过maven-assembly-plugin制作的,感兴趣的读者可以直接查看源码一窥究竟。

    =====================================================================

    将一个带有main函数的example.java打包成JAR(java文件必须带有main函数,这样打包成的JAR才能双击直接运行)

    一、编译example.java,得到example.class文件

    二、准备一个清单文件manifest.mf,此文件和example.class在同一目录里

    可以先建一个mainfest.txt文件,然后再把扩展名改成.mf

    用记事本打开manifest.mf,在里面输入

    main-class: example

    (注意冒号后有一个空格,而且example后必须有一个换行)

    三、打开命令提示符(前提是系统的path路径和classpath路径都已经设置好了),在里面输入

    jar cvfm example.jar manifest.mf example.class

    (c:新建一个JAR文件

    v:输出打包结果

    f:JAR文件名

    m:清单文件名)

    四、如果example.java编译后得到多个class文件,例如:example1.class、example2.class

    则在CMD里输入

    jar cvfm example.jar manifest.mf example1.class example2.class

    五、若得到多个编译文件,也可以将这些class文件全部移入一个新的文件夹(例如classes文件夹,classes文件夹和manifest.mf文件在同一目录)

    然后在CMD里输入:

    jar cvfm example.jar manifest.mf -C classses/ .

    (/和.之间有一个空格)

    展开全文
  • Maven打包到指定位置

    2021-11-27 20:13:51
    目录 前言 方式一:通过maven-jar-plugin指定outputDirectory输出路径 方式二:通过maven-resources-plugin指定outputDirectory输出路径 ...扩展:使用maven-dependency-plugin 插件将依赖包导出到指定文件夹

    目录

    前言

    方式一:通过maven-jar-plugin指定outputDirectory输出路径

    方式二:通过maven-resources-plugin指定outputDirectory输出路径

    方式三:通过maven-antrun-plugin复制jar包

    方式四:通过maven-antrun-plugin嵌入build.xml文件

    方式五:使用distributionManagement设置存放路径

    扩展:使用maven-dependency-plugin 插件将依赖包导出到指定文件夹


    先赞后看,此生必赚

    前言

    maven打完jar包之后,默认放置位置是target目录

    有时候项目需要,如何将jar包放置到指定的目录呢?

    方式一:通过maven-jar-plugin指定outputDirectory输出路径

     可以排除某些配置文件,没有文件夹的话会自动创建!

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-jar-plugin</artifactId>
    	<configuration>
    		<!-- 指定打包的jar包输出路径 -->
    		<outputDirectory>D:\test</outputDirectory>
    		<!--不打入jar包的文件类型或者路径 -->
    		<excludes>
    			<exclude>**/*.properties</exclude>
    			<exclude>**/*.xml</exclude>
    			<exclude>**/*.yml</exclude>
    			<exclude>static/**</exclude>
    			<exclude>templates/**</exclude>
    		</excludes>
    	</configuration>
    </plugin>

    方式二:通过maven-resources-plugin指定outputDirectory输出路径

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-resources-plugin</artifactId>
    	<executions>
    		<execution>
    			<id>copy-resources</id>
    			<phase>package</phase>
    			<goals>
    				<goal>copy-resources</goal>
    			</goals>
    			<configuration>
    				<encoding>UTF-8</encoding>
    				<!--打成jar包后复制到的路径 -->
    				<outputDirectory>
    					D:\test1
    				</outputDirectory>
    				<resources>
    					<resource>
    						<!--项目中的路径 -->
    						<directory>src/main/resources/</directory>
    					</resource>
    				</resources>
    			</configuration>
    		</execution>
    		<!--可配置多个提取复制路径只需要 “<id>”名字不一样即可 -->
    		<execution>
    			<id>copy-bulid</id>
    			<phase>package</phase>
    			<goals>
    				<goal>copy-resources</goal>
    			</goals>
    			<configuration>
    				<encoding>UTF-8</encoding>
    				<outputDirectory>
    					D:\test2
    				</outputDirectory>
    				<resources>
    					<resource>
    						<directory>target</directory>
    					</resource>
    				</resources>
    			</configuration>
    		</execution>
    	</executions>
    </plugin>

    方式三:通过maven-antrun-plugin复制jar包

    Maven已经成为Java 工业领域事实上的构建标准,但在某些情况下,如果可以用Ant命令,还是很方便的。借助 maven-antrun-plugin 插件,可以在Maven执行时,额外执行Ant脚本如下列配置所示:

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-antrun-plugin</artifactId>
    	<version>1.8</version>
    	<executions>
    		<execution>
    			<id>install</id>
    			<phase>install</phase>
    			<configuration>
    				<target>
    					<echo message="*******************install*******************" />
    					<mkdir dir="${basedir}/target/classes" />
    					<copy todir="../target/commons" overwrite="true">
    						<fileset dir="${project.build.directory}"
    							erroronmissingdir="false">
    							<include name="*.jar" />
    						</fileset>
    					</copy>
    					<move file="${project.build.directory}/xxxxxxx.jar"
    						tofile="${project.build.directory}/xxx.jar" />
    				</target>
    			</configuration>
    			<goals>
    				<goal>run</goal>
    			</goals>
    		</execution>
    		<execution>
    			<id>clean</id>
    			<phase>clean</phase>
    			<configuration>
    				<target>
    					<echo message="*******************clean*******************" />
    					<delete dir="target" />
    					<mkdir dir="${basedir}/target/classes" />
    				</target>
    			</configuration>
    			<goals>
    				<goal>run</goal>
    			</goals>
    		</execution>
    	</executions>
    </plugin>

    <execution>是可执行命令,可以修改maven的命令执行过程,下面的两个execution是修改了installclean

    <echo>是打印命令;

    <mkdir>是创建文件夹命令;(文件夹里面没有东西时好像不会创建出来)

    <copy>是复制命令,其中todir是目标文件夹,overwrite是覆盖旧文件,<fileset dir="xxxx">是源文件,<include>是包含jar包;

    <move>是移动文件或者修改名称命令

    <delete>是删除命令;

    ${basedir} 指的是 项目根路径 
    ${project.build.directory} 指的是 target所在目录
    ${project.build.finalName} 指的是 jar包前缀名

    方式四:通过maven-antrun-plugin嵌入build.xml文件

    如下列配置所示:

    将build.xml放到项目根路径下,使用<ant antfile="${basedir}/build.xml">嵌入build.xml文件即可。

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-antrun-plugin</artifactId>
    	<version>1.8</version>
    	<executions>
    		<execution>
    			<id>install</id>
    			<phase>install</phase>
    			<configuration>
    				<target>
    					<property name="compile_classpath"
    						refid="maven.compile.classpath" />
    					<property name="runtime_classpath"
    						refid="maven.runtime.classpath" />
    					<property name="test_classpath"
    						refid="maven.test.classpath" />
    					<property name="plugin_classpath"
    						refid="maven.plugin.classpath" />
    
    					<ant antfile="${basedir}/build.xml">
    						<target name="test" />
    					</ant>
    				</target>
    			</configuration>
    			<goals>
    				<goal>run</goal>
    			</goals>
    		</execution>
    	</executions>
    </plugin>

    方式五:使用distributionManagement设置存放路径

    这种方式没有通过插件,而是直接配置distributionManagement

    使用deploy命令可以部署到目标文件夹,没有文件夹的话会自动创建!

    <distributionManagement>
    	<repository>
    		<id>localRepository</id>
    		<url>file:D:/testRepository</url>
    	</repository>
    </distributionManagement>

    扩展:使用maven-dependency-plugin 插件将依赖包导出到指定文件夹

    这种方式是将依赖包输出到指定路径

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-dependency-plugin</artifactId>
    	<executions>
    		<execution>
    			<id>copy-dependencies</id>
    			<phase>package</phase>
    			<goals>
    				<goal>copy-dependencies</goal>
    			</goals>
    			<configuration>
    				<!-- 指定输出路径 -->
    				<outputDirectory>D:\test2</outputDirectory>
    				<excludeTransitive>false</excludeTransitive>
    				<stripVersion>false</stripVersion>
    				<includeScope>runtime</includeScope>
    			</configuration>
    		</execution>
    	</executions>
    </plugin>

    参考文献:

    1.Referencing the Maven Classpaths

    2.利用Maven插件将依赖包、jar/war包及配置文件输出到指定目录

    3.maven-antrun-plugin的使用

    4.centos7 搭建nexus 仓库配置和maven发布jar包到仓库

    展开全文
  • maven-assembly-plugin插件可用于为maven项目打包,可指定打包的类型,下面通过一个demo来说明使用方法。示例项目结构: pom配置:xmlns:xsi=...

    maven-assembly-plugin插件可用于为maven项目打包,可指定打包的类型,下面通过一个demo来说明使用方法。

    示例

    项目结构:

    429c3952cbb4589db0dfc2091eb982b7.png

    pom配置:

    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">

    InstrumentDemo

    xyz.cicy

    1.0-SNAPSHOT

    4.0.0

    Main

    Main

    http://www.example.com

    UTF-8

    1.8

    1.8

    junit

    junit

    4.11

    test

    maven-jar-plugin

    3.0.2

    default-jar

    none

    org.apache.maven.plugins

    maven-assembly-plugin

    3.1.1

    xyz.cicy.App

    jar-with-dependencies

    false

    make-assembly

    package

    single

    结果

    7c54ba96803b364e45f686a13295d318.png

    要点

    maven默认生成的pom文件中build标签内嵌pluginmanagements标签,该标签需删除;

    mainClass标签用于指定main方法所在的类;

    descriptorRef指定打出的包的格式,这里指定为jar格式;

    appendAssemblyId指定包名是否要带后缀,如为true,则上述配置打出的包如下图所示:

    8be80279630cad8c0adac589d7222fe1.png

    同样可以直接指定包名,在configuration标签内增加finalName标签,如下图所示:

    fdd6d8fc5e0f0688e6144e24e4fa55d4.png

    打出的包如下所示:

    682550c3f3237601fc12b750ee4e5bad.png

    maven默认使用maven-jar-plugin打包,因此添加maven-assembly-plugin之后进行打包将会得到两个jar文件。如**示例章节所示将maven-jar-plugin**绑定到一个不存在的phase,即可禁止打包动作

    展开全文
  • maven打包包含注释

    2020-12-19 07:53:45
    maven打包之后为什么class文件中没有注释了目标 1. 将依赖第三方jar包都打进去2. 将工程java 目录下所有文件夹和配置文件,包括资源文件都打入jar包,根据目录来3. 打出jar文件可直接运行方法:采用 maven-assembly-...
  • 主要是说idea下用maven打包的常见问题或者基础理论知识的记录;基于springboot框架和idea工具; 我保留了某次工程的打包后的包,可以用解压软件直接解压查看其中的内容,对比不同。 二、后缀名.jar.original和.jar的...
  • maven打包时在包后添加当前时间

    千次阅读 2019-09-17 15:26:04
    方案一 使用maven自带的时间插件,缺点是只能用 UTC 时区 在properties中定义时间格式 <properties> <maven.build.timestamp.format>MMddHHmmss</maven.build.tim...
  • maven打包分离 resource、lib包

    千次阅读 2019-04-24 20:32:54
    在工作中一般创建的工程都是maven工程,用spring boot进行项目开发,maven插件就是自动集成的 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-...
  • SpringBoot-Maven打包压缩瘦身

    千次阅读 2020-02-24 21:40:12
    SpringBoot-Maven打包压缩瘦身一、Spring Boot 可执行 jar 分析1.1 打包1.2 两种 jar 的比较1.3 一次打包两个 jar二、SpringBoot迭代发布JAR瘦身配置三、引入内部编译的依赖四、Spring Boot Thin Launcher五、 maven...
  • Apache Maven是一个软件项目管理和理解工具。基于项目对象模型(POM)的概念,Maven可以从一个中心信息管理项目的构建,报告和文档。 虽然近年来Gradle作为后起之秀借着Android的东风大肆扩张,Maven作为主流构建...
  • 开发过程中遇到这样的需求,Java拉取指定代码库指定分支的代码java代码,然后有maven打包,将打包好的jar上传到文件服务器。解决思路分三步:1.从Git仓库下载代码文件2.用maven打包下载好的代码文件3.上传jar解决...
  • maven打包成jar文件与打包成tar.gz文件

    万次阅读 2018-03-27 14:55:26
    一、普通main方法入口的jar程序打包 maven-jar-plugin插件与maven-jar-plugin插件用到maven-jar-plugin插件与maven-jar-plugin插件,打包完的jar文件所依赖包没有导包到jar文件中,管理不方便打包命令: maven -...
  • 最近研究JFX,写出来了但是打包不了,这。。。尴尬。。。 IDEA的文档说只支持Java8达成jar包: 不过幸好文档末尾提到可以使用一些第三方工具: 因此记录一下使用IDEA打包JFX11的工程。 2 准备工作 2.1 环境 IDEA ...
  • Maven - 指定打包时的包

    万次阅读 2018-07-02 16:59:01
    Maven - 指定打包时的包 &lt;build&gt; &lt;finalName&gt;包&lt;/finalName&gt; &lt;/build&gt;
  • idae打包 有时候,我们会用IDEA来开发一些小工具,需要打成可运行的JAR包;或者某些项目不是WEB应用,纯粹是后台应用,发布时,也需要打成可运行的JAR包。并且,如果依赖第三方jar时,又不希望第三方jar也打入最终的...
  • 先简单介绍下maven打包的几种方式,如果你只是想知道如何使用assembly插件打包的时候去掉assembly id可以直接跳到下面 Maven打包的几种方式 1. 使用maven-jar-plugin打包 使用默认的maven-jar-plugin 打包 在使用idea...
  • Maven打包时去掉项目版本号 Maven打包后,jar或war文件名里带有版本号信息,如projectname0.0.1-SNAPSHOT.jar等,怎么去掉呢? 解决办法: 打开项目pom.xml文件,在<build> </build>标签内加入如下...
  • 后缀名为.jar.original的jar包,一般是我们的项目打包用作其它项目的依赖使用,这个包因为没有将其它依赖打进去,特点就是小; 后缀名为.jar的jar包,一般是我们用作部署使用,同时可以直接使用命令java -jar jar包...
  • 问题:这个.original文件有什么用? 回答:.jar.original是普通jar包,不包含依赖 .jar是可执行jar包,包含了pom中的所有依赖,可以直接用java -jar命令执行 如果是部署,就用.jar 如果是给别的项目用,就要给.jar....
  • Eclipse的插件Maven打包

    万次阅读 2016-04-21 10:57:12
    Eclipse插件Maven打包
  • maven 打包编译spring boot 项目 并启动

    千次阅读 2019-04-07 21:10:02
    本文主要 进行 spring boot 项目的编译,打包,运行,首页是项目结构图: 项目的结构图: bin 里存放的是的jar包的执行文件,logs是日志的存放地址, pid 存放该jar包运行后的进行id 具体步骤如下: 1 pom ...
  • Maven命令打包jar包到本地仓库 准备工作,首先配置maven环境变量,已经配置了可以忽略maven的配置. 将下载的maven文件解压到D:\maven\apache-maven- 3.5.3-bin\apache-maven-3.5.3目录下: 新建环境变量MAVEN_HOME...
  • 一、报错:xxx.jar中没有主清单属性方式一、手动修改MANIFEST.MF 文件配置通过 7z 等压缩工具打开 jar 包修改 META-INF 目录中的 ...Class: com.zhiyin.screenshot.ScreenShotDemo(全限定名,不加后缀)键值之间必...
  • setting.xml 是全局级别的配置文件,主要用于配置 maven 的运行环境等一系列通用的属性。 pom.xml 是项目级别的配置文件 。 pom 作为项目对象模型。通过 xml 表示 maven 项目,使用 pom.xml 来实现。主要描述了:...
  • Maven打包插件maven-assembly-plugin配置

    千次阅读 2018-11-13 19:40:56
    Maven打包插件maven-shade-plugin配置在pom.xml文件中的配置新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定...
  • Maven packaging打包类型

    千次阅读 2019-02-25 10:16:27
    Maven项目的常用的打包类型分为:pom、jar、war等类型 项目中一般使用maven进行模块管理,每个模块下对应都有一个pom文件,pom文件中维护了各模块之间的依赖和继承关系。项目模块化可以将通用的部分抽离出来,方便...
  • 1、查看项目版本: ... 2、https://blog.csdn.net/w_monster/article/details/108261576 首先打包名字是由version标签控制的,snapshot快照表示不稳定,尚处于开发阶段;release表示稳定发型版本。

空空如也

空空如也

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

maven打包后缀名