`

java mvn 打包jar 命令

 
阅读更多
 mvn dependency:copy-dependencies -DoutputDirectory=lib

java -Djava.ext.dirs=sso com.youan.sso.server.MySSOCore 
转载:http://www.yihaomen.com/article/java/393.htm
在工作中,常常用到用maven 去创建j可执行的jar 文件,当然这会用到maven的插件.maven-assembly-plugin ,在通常的情况下,这是一个简单的好用的插件,但是一旦我们的工程中使用了spring 相关的一些jar 包,这时候问题就出现了; 通常的错误如下:Unable to create application context: Unable to locate Spring NamespaceHandler 
(...) 意思也很明确,要么是 schema 找不到,如果你能连接到互联网的话,可能也不会有错,加入你不能连接外网,只能在局域网的话,问题就出来了。因为找不到相关的schema . 但实际上,这些 schema 是存在与spring 的jar包中的,所以要配置路径。

如下就是 maven 的解决方法, 配置pom.xml 。
程序代码 程序代码

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-shade-plugin</artifactId>
  <version>1.7</version>

  <executions>
    <execution>
      <phase>package</phase>
      <goals>
        <goal>shade</goal>
      </goals>
      <configuration>
        <finalName>my-spring-app</finalName>
        <shadedArtifactAttached>true</shadedArtifactAttached>
        <shadedClassifierName>jar-with-dependencies</shadedClassifierName>
        <transformers>
          <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
            <mainClass>com.yihaomen.Clazz</mainClass>
          </transformer>
          <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
            <resource>META-INF/spring.handlers</resource>
          </transformer>
          <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
            <resource>META-INF/spring.schemas</resource>
          </transformer>
          <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
            <resource>META-INF/spring.tooling</resource>
          </transformer>
        </transformers>

      </configuration>
    </execution>
  </executions>
</plugin>


里面要注意 mainClass 的配置,要匹配你的CLASS.

在做了这些配置之后,你可以用 mvn package 打成jar 文件,然后就可以执行了。 
注意:以前这样打包的时候可能直接用,最近打包报:
解决办法把是用好压打开jar包,把META-INF下的ECLIPSEF.RSA删除即可
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Man
ifest main attributes
        at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
        at sun.security.util.SignatureFileVerifier.process(Unknown Source)
        at java.util.jar.JarVerifier.processEntry(Unknown Source)
        at java.util.jar.JarVerifier.update(Unknown Source)
        at java.util.jar.JarFile.initializeVerifier(Unknown Source)
        at java.util.jar.JarFile.getInputStream(Unknown Source)
        at sun.misc.URLClassPath$JarLoader$2.getInputStream(Unknown Source)
        at sun.misc.Resource.cachedInputStream(Unknown Source)
        at sun.misc.Resource.getByteBuffer(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
分享到:
评论

相关推荐

    java打包为jar

    在Java开发过程中,将项目打包成可执行的JAR(Java Archive)文件是常见的操作,这使得代码可以方便地分发、部署和运行。本文将详细介绍如何将Java工程打包成可执行的JAR文件。 首先,确保你有一个完整的Java工程,...

    Java项目后台打包jar包执行报错“没有主清单属性”

    5. 最后,保存pom.xml文件,然后在命令行或者IDE中执行Maven的打包命令,通常是`mvn clean package`,这将根据pom.xml的配置打包项目,并生成包含主清单属性的jar文件。 注意:如果你的项目不是Spring Boot应用,你...

    maven+bat打包

    在zip.bat中,可能包含`cd`命令改变当前目录,`copy`命令复制文件,以及`jar`或`zip`命令创建归档文件。 在提供的文件列表中,`pom (2).xml`可能是POM.xml的另一个版本,可能包含了执行bat脚本的配置。请注意,...

    maven打包 maven打jar包详细步骤

    本文将详细讲解如何使用Maven来打包一个Java项目,并创建JAR文件。 首先,Maven有三个主要生命周期阶段:`clean`、`default`(也称为`compile`)和`install`。每个阶段包含一系列的阶段(或者称为目标,如`compile`...

    Mvn常用命令总结

    该命令用于编译项目并打包成可发布的格式(如jar或war)。执行完成后,可以在项目的target目录下找到打包好的文件。例如,如果项目被打包成jar文件,则会在target目录下生成对应的`.jar`文件。 #### 4. 启动Jetty...

    java打成jar的过程

    4. **打包JAR文件**:现在可以使用Java的`jar`工具将所有`.class`文件和资源文件打包成JAR。命令格式如下: ```bash jar cmf MANIFEST.MF HelloWorld.jar HelloWorld.class ``` 这里`c`表示创建新的JAR,`m`表示使用...

    Java+IDEA+maven混淆打包

    在`pom.xml`文件中,我们需要添加`maven-jar-plugin`插件来打包Java项目。以下是一个基本的配置示例: ```xml &lt;groupId&gt;org.apache.maven.plugins &lt;artifactId&gt;maven-jar-plugin &lt;version&gt;3.2.0 ...

    Cmd执行mvn clean package 命令使用文档

    对于Java Web应用程序来说,这通常意味着生成一个`.war`文件,而对于普通的Java应用,则会生成一个`.jar`文件。 3. **mvn**:Maven的命令行工具。它负责解析POM文件中的配置信息,并按照指定的目标执行相应的构建...

    通过mvn命令下载pom.xml中的jar包

    例如,`mvn install`命令会编译源代码,运行测试,打包项目,并将结果安装到本地仓库。其中,`mvn dependency:get`命令可以用来单独下载一个特定的依赖。 在批处理文件中使用`mvn`命令下载`pom.xml`中的jar包,通常...

    Maven自动升级版本号并打包上传的脚本

    `mvn package`命令会将源代码编译、测试并打包成指定格式(如JAR或WAR)。如果配置了`&lt;build&gt;&lt;finalName&gt;yourArtifactId&lt;/finalName&gt;&lt;/build&gt;`,那么生成的文件名将会是`yourArtifactId-1.0.0-SNAPSHOT.jar`。 4. ...

    springboot 多项目打包 jar包教程,包含源代码

    运行`mvn package`或`gradle build`命令,会生成一个包含所有子应用的单一jar文件。然后,你可以像运行普通Spring Boot应用一样运行这个jar。 源代码中可能包含以下关键部分: - `pom.xml`或`build.gradle`文件,...

    mvn常用命令

    1. 创建Maven的普通Java项目:`mvn archetype:create -DgroupId=packageName -DartifactId=projectName` 2. 创建Maven的Web项目:`mvn archetype:create -DgroupId=packageName -DartifactId=webappName -...

    java项目制作jar包成服务配置

    Maven通过在`pom.xml`文件中配置打包插件,如`maven-jar-plugin`,执行`mvn clean package`命令即可生成JAR。Gradle则在`build.gradle`文件中配置相应任务,运行`gradle build`或`gradle jar`打包。 2. 手动打包:...

    eclipse 导出 mvn jar 工具

    这个脚本会切换到当前目录(项目根目录),然后执行`mvn clean package`命令,清理旧的构建产物,并打包新的JAR文件。 4. **运行批处理脚本**:双击`expMvn.bat`运行脚本。完成后,你将在`target`目录下找到打包好...

    Java 应用程序打包

    在创建JAR时,可以使用`-m`选项指定MANIFEST.MF,或者在jar命令中直接添加入口点。 4. **构建工具**: 为了简化打包流程,开发者通常会使用构建工具,如Maven或Gradle。这些工具能自动化编译、测试、打包等步骤。...

    java使用ffmpeg的jar包

    mvn install:install-file -Dfile=E:\jave-1.0.2.jar //包的输入路径 -DgroupId=jave -DartifactId=jave -Dversion=1.0.2 -Dpackaging=jar //执行完成后 jar 会放入maven 仓库中 maven/repository/jave...

    最常用的几种Java打包方式总结

    4. **JAR命令**:Java自带的打包工具,用于创建JAR文件。 #### 四、具体打包方式 ##### 1. 使用JAR命令打包 对于简单的Java应用程序,可以直接使用JAR命令进行打包: ```bash jar cvf myapp.jar -C classes/ . `...

    dos命令测试java jar文件 命令行下运行JUnit测试 命令运行java

    这里我们主要探讨如何使用DOS命令来测试Java JAR文件,以及如何在命令行下运行JUnit测试。这是一项基础但至关重要的技能,因为通过命令行工具可以高效地自动化测试和调试代码。 首先,让我们了解Java JAR文件。JAR...

    java打包成exe

    在Maven中,可以使用`mvn package`命令;在Gradle中,使用`gradle build`。这样会在目标目录下生成一个或多个JAR文件。 2. **选择打包工具**: 为了将JAR转换为.exe,我们需要一个第三方工具。这里我们以Launch4j...

Global site tag (gtag.js) - Google Analytics