用maven打了一个可运行jar,但是运行提示找不到类
<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>oms</groupId>
  <artifactId>international</artifactId>
  <version>0.0.1-SNAPSHOT</version>

  <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     </properties>

  <dependencies>
        <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.5</version>
        <scope>compile</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.54</version>
        <scope>compile</scope>
    </dependency>


    <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.8.1</version>
    </dependency>




  </dependencies>

  <build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <archive>
                        <manifest>
                            <mainClass>oms.window.Windowtest</mainClass>
                            <addClasspath>true</addClasspath>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                  <source>1.8</source>
                  <target>1.8</target>
                </configuration>
          </plugin>

        </plugins>
    </pluginManagement>
  </build>
</project>

图片说明

u011856283
你好杰米 回复devmiao: @眼科
8 个月之前 回复
u011856283
你好杰米 回复再穷不能穷山东思密达: 你是不是海边去多了,变沙雕了,反对又不是妮怢我点的
8 个月之前 回复
u011856283
你好杰米 回复trzzzZ: ?????我怎么了我?????
8 个月之前 回复
tangruize
trzzzZ 回复再穷不能穷山东思密达: 不过我的回答有点疏忽, 把maven-dependency-plugin写成了maven-jar-plugin
8 个月之前 回复
tangruize
trzzzZ 回复再穷不能穷山东思密达: 回答本问题的时候没有理解到您这句话的意思. 晚上打开发现我可怜的声望值竟然降低了两分, 感谢您的提醒! 我不该回答这个问题的.
8 个月之前 回复
zqbnqsdsmd
再穷不能穷山东思密达 回复devmiao: 这个我知道啊,我就是奇怪,这个人好多不采纳,乱采纳的回答。
8 个月之前 回复
devmiao
见了你女王大人喵姐还不跪下 回复再穷不能穷山东思密达: 你可以在后台看到每个人的评价注解,这个人黑历史满满
8 个月之前 回复
zqbnqsdsmd
再穷不能穷山东思密达 很好奇为什么你是无赖提问者
8 个月之前 回复

1个回答

您好! 您只使用了maven-jar-plugin对项目代码进行打包, 但没有将依赖关系打包进去, 可以添加maven-dependency-plugin.

也可以尝试一下使用下面的插件(并去掉你原来的).

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.2.1</version>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

顺便说一下, 如果你使用当前的做法, 并将依赖关系的jar包放在classpath下, 则也能运行.

另外, 使用我提供的插件, 依赖关系如果为 <scope>provided</scope>则这个依赖关系不会被打包进去, 方便精准控制.

望采纳.

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Maven 打包可运行 jar
[url]http://my.oschina.net/MiluDeer/blog/489988[/url] 使用 maven 将项目打包成可运行 jar 注意两点 [b]1. 复制项目依赖的其他 jar[/b] 打包后, 再运行如下命令将依赖的 jar 复制到 target/lib 目录 [code=&quot;java&quot;]mvn dependency:copy-dependencies ...
maven 打成可运行jar
项目需要把一个项目打成可运行的jar,关联依赖的项目放在lib目录中,最终打成的目录结构如下: bin  --可运行脚本:bat,sh等res -- 项目的资源文件lib -- 依赖其他jar 1. 在pom中加入 org.apache.maven.plugins maven-jar-plugin
Maven打包可运行jar
查看maven版本项目pom.xml中添加 3、在项目路径下运行mvn clean package  -Dmaven.test.skip=true 4、可运行的jar包在项目的target下面
Maven生成可运行jar
1. 使用maven-assembly-plugin插件打包 &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; &lt;artifactId&gt;maven-assembly-plugin&lt;/artifactId&gt; &lt;configuration&gt; ...
linux运行jar找不到类
Class-Path后面写linux里jar的绝对地址,这里不写的话也可以添加这个路径到/etc/profile里 不过这里会覆盖/etc/profile配置
maven 打包可运行jar pom配置
&amp;lt;build&amp;gt; &amp;lt;pluginManagement&amp;gt; &amp;lt;plugins&amp;gt; &amp;lt;plugin&amp;gt; &amp;lt;artifactId&amp;gt;maven-jar-plugin&amp;lt;/artifactId&amp;gt; &amp;lt;version&amp;gt;3.0.2&amp;lt;/version&
jar 运行后找不到了
把编译的jar文件放到手机上,点击运行后提示安装MIDlet,接着运行,这次完了后手机上就没有jar包了。rn不知道什么回事。
运行 jar 中的类 运行jar
java -cp target/simple-1.0-SNAPSHOT.jar org.sonatype.mavenbook.App   java -jar  com.javaeye.Aclass
生成可运行jar
生成可运行的jar包步骤,包含项目中有第三方包的时候该怎么处理,生成jar可以做到完全跨平台,而不是生成exe,若要生成exe,请参看鄙人生成exe资源
javaw运行jar找不到主类
用javaw test.jar运行时显示找不到主类是怎么回事?我的那个属性文件写的没问题啊,压缩包里清单文件也显示rnrnrnManifest-Version: 1.0rnCreated-By: 1.6.0_24 (Sun Microsystems Inc.)rnMain-Class: yeeku.TestOutrnrn为什么运行的时候显示找不到主类呢?
J2SE打包成jar后,运行依赖包提示找不到类
我将执行程序和依赖包添加到eclipse后都能执行rn但是用eclipse打包成jar包后,除了主类的包能运行,所有打包进去后的jar包都不能运行rn请问该如何解决?rnrn我打包后的jar包的目录结构如下rnMETA-INFrn -MANIFEST.MFrnlibrn -所有依赖包rncomrn -主类包rn.projectrn.classpathrnrnrnMANIFEST.MF的内容如下rnManifest-Version: 1.0rnMain-Class: com.time.main.Runrnrnclasspath的内容就是跟eclipse中的一样的rn如下rnrnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rnrnrnrn我该如何更改?
[Scala基础]--java运行jar类、scala运行jar类
1、java运行测试jar:执行---》java  -classpath  F:/TestHello.jar  Test2或者java -cp  F:/TestHello.jar  Test2打印结果:hello world java类如下:/** * Document:本类作用----&amp;gt;打印hello world * User: yangjf * Date: 2016/9/25 9...
java用命令编译打包可运行jar
hellooooo this is a test
taglib初级问题,运行提示找不到类?
原代码rnHelloWorld.jsprnrnrn Hello worldrnrnrn<%@ taglib uri="/hello.tld" prefix="chap09" %>rnrnrnrn*********************************rnhello.tldrnrnrnrn1.0rn1.1rnHello Worldrnrn helloworldrn com.wrox.projsp.ch09.JavaScriptExampleTagrnrn rnrn************************************rnweb.xml:rn Chapter 9 examplern rn just a examplern rn rn /hello.tldrn /WEB-INF/hello.tldrn rn注:添加在间rn rnJavaScriptExampleTag.java:rn###################################rnpackage com.wrox.projsp.ch09;rnrnimport java.io.*;rnimport javax.servlet.jsp.*;rnimport javax.servlet.jsp.tagext.*;rnrnpublic class JavaScriptExampleTag extends TagSupportrn public int doStartTag() throws JspTagExceptionrn tryrn pageContext.getOut().write("Hello JSP World!");rn rn catch(IOException ioException)rn System.err.println("IO Exception thrown in Helloworld.daStartTage():");rn System.err.println(ioException.toString());rn // throw new JspException();rn rn return SKIP_BODY;rn rn rnrnrnrnrnrnrn错误提示:rnrnrnError 500: 无法编译 JSP 类 错误发生在 jsp 文件:/HelloWorld.jsp 的行 17: 生成的 servlet 错误: D:\zdbtext\tt2\.metadata\.plugins\com.ibm.etools.server.core\tmp0\cache\localhost\server1\DefaultEAR\aa.war\_HelloWorld.java:42: 找不到类 org.apache.jsp.JavaScriptExampleTag。 JavaScriptExampleTag _jspx_th_chap09_helloworld_0 = new JavaScriptExampleTag(); ^ 错误发生在 jsp 文件:/HelloWorld.jsp 的行 17: 生成的 servlet 错误: D:\zdbtext\tt2\.metadata\.plugins\com.ibm.etools.server.core\tmp0\cache\localhost\server1\DefaultEAR\aa.war\_HelloWorld.java:42: 找不到类 org.apache.jsp.JavaScriptExampleTag。 JavaScriptExampleTag _jspx_th_chap09_helloworld_0 = new JavaScriptExampleTag(); ^ 错误发生在 jsp 文件:/HelloWorld.jsp 的行 17: 生成的 servlet 错误: D:\zdbtext\tt2\.metadata\.plugins\com.ibm.etools.server.core\tmp0\cache\localhost\server1\DefaultEAR\aa.war\_HelloWorld.java:81: 变量 _jspx_th_chap09_helloworld_0 可能尚未初始化。 _jspx_th_chap09_helloworld_0.setPageContext(pageContext); ^ 3 个错误rn
运行jar指定运行类,同时传参数
格式如下:java -classpath xxx.jar 运行类的全路径 参数 xxx.jar表示Jar包的名称 运行类的全路径指包名+类名,如:com.xxx.xxx.main 参数可以是多个,多个参数之间用空格隔开
Ant 打可运行的jar
&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF8&quot;?&amp;gt; &amp;lt;project name=&quot;buildJar&quot; default=&quot;jar&quot; basedir=&quot;.&quot;&amp;gt; &amp;lt;!--删除之前生成的jar包--&amp;gt; &amp;lt;target name=&quot;clean&quot;&amp;gt
Maven项目打成可运行的jar
Maven项目打成可运行的jar@TOC 第一步 首先在类里面添加一个运行程序的main函数 public class Demo{ public static void main(String[] args) { //运行程序 System.out.println(&amp;quot;Hello World&amp;quot;); } } 第二步 添加maven的plugin //...
归并排序动画可运行jar
JavaSwing写的归并排序动画,我一年前写的排序动画,里面的归并排序现在终于完成了,拿出来与大家分享分享
myeclipse导出可运行jar
1、找到你要导出的项目(如果你要导出的文件只是在项目下的其中一个包里也不要选择导出这一个包而是导出整个项目)右键Export 2、选择Runnable Jar file (这是选择可运行的包) 然后下一步 3、Launch configuation 选择的是你的主清单属性(就是你要运行的main方法所在的类,如果找不到就把main方法跑一边) Export destinaction 把导出的
maven打可运行的jar包
maven打可运行jar包 主要注意两个地方 第一,指定main方法的入口。 第二,引入引用的class。 在pom里面加入下面 platform-account org.apache.maven.plugins maven-jar-plugin
MAVEN打可运行jar包
NULL 博文链接:https://gghaomm.iteye.com/blog/1754767
maven 可运行jar包打包
最近要使用开发socket,但直接放在tomcat中和web项目耦合太深,准备直接打可运行jar,但直接打包出来的没有对应依赖和主函数入口,查了下资料,吧步骤整理了下。1.在pom文件中的build标签里引入控件。&amp;lt;pluginManagement&amp;gt; &amp;lt;plugins&amp;gt; &amp;lt;!-- 解决Maven插件在Eclipse内执行了一系列的生命周期引起冲突 --&amp;gt...
maven打可运行java包
开发十年,就只剩下这套Java开发体系了 &amp;gt;&amp;gt;&amp;gt;    ...
怎么运行jar内的类
如果jar内有两个类A和B都是包含main函数的,rn请问在jar外面怎么分别执行A和B
运行一个java小程序,总提示AgentThreadGroup.class找不到?
我安装了j2sdk1.4,并启动了DIIOP,classpath中也设好了,但运行一个java小程序时,服务器总报错,HTTP WEB Server:项目未找到异常 ...../AgentThreadGroup.class,rn该类不是我写的,可能是domino中的,但为何找不到呢rn该如何解决呢?急急!
java运行提示main方法找不到?
java运行提示main方法找不到?
提示找不到mswinsck.ocx,运行不了?
写了一个程序,其中用到了mswinsck控件。在自己机子上可以运行,在别的机子上就运行不了,提示说少了这个文件。rn如何解决这类问题?
运行提示找不到文件:DBDateTimePicker.dcu
我正在看别人做的一个系统。但是运行提示找不到文件:DBDateTimePicker.dcu!!!rnrn是怎么回事呢?应该怎么解决呀?
运行程序,提示找不到共享库
现象:确定共享库已安装,并且程序编译通过,但是运行时提示找不到共享库。 解决方案:sudo ldconfig
Maven 找不到 jar 包
**问题:**Maven 仓库和依赖都配置好了就是找不到 jar 包。原因分析: 1.仓库地址没有对应的 jar 包:仓库地址里面没有包含你要用的 jar 包。 2.仓库地址不可访问:仓库地址因为各种原因不能访问。 3.jar 包的 gav不对:(这三个都有可能被更新,所以如果你在网上如果搜到了有你jar包地址,就是 maven 检测不到,下载不下来,那么基本上就是 gav 问题了)。案例:这
如何使用maven把项目打包成可运行的jar
本人小白一枚,前端时间用idea写了一个springboot程序,需要达成jar,可是用idea自带的打包工具,jar运行时总是报错,所以改用maven,最后把方法分享给大家. 一,打包的前提是已经安装了maven,如果没有安装,可以先安装,教程网上有很多,在dos下,运行命令: mvn -v,出现如下信息说明已经成功安装maven. 二,如果程序运行无异常,需要打包,注意有几个坑(心酸)...
java 打包可运行的jar,引入第三方包,maven
src/main/resources ${project.build.directory} org.apache.maven.plugins maven-compiler-plugin lib 1.7 1.7 UTF-8 org.apache.maven.plugins maven-jar-plugin true lib/
Maven 打包为可运行jar pom文件配置
楔子 Maven 打包为可运行jar ,pom文件配置。 注意 在IDEA 运行是,相关配置文件会被打包到 \target\classes目录下,添加下面这个会使配置文件进入 指定的位置,而不是 \target\classes。会造成程序提示找不到 配置文件等。 &lt;!-- &amp;&amp; 在IDE中运行要把这个给注释掉,因为IDEA打包 默认路劲是 classes ,有下面行会把...
maven打包Spring boot项目之后,运行jar提示java.lang.ClassNotFoundException
idea下用springboot写了一个微服务,用右边maven projects-》lifecycle-》package打包,打出来的jar,在命令行下用java -jar来运行的时候提示java.lang.ClassNotFoundException。rnrn之前用同样的方法打包过其他的spring boot项目,都没有问题,能正常运行,这次不知为什么?rnrn请知晓的同学帮忙分析分析。rnrnrn谢谢大家了。
运行JAR
将FAT解压后放到myeclipse\eclipse\plugins下,重新启动即可导出可执行的JAR文件
运行.jar
我有一个myeclipce7.0的注册机,里边有一个MyEclipseSevenEditionKeyGen.jar,我双击后无法运行,打不开,怎么办啊?
运行jar
MANIFEST.MF Manifest-Version: 1.0 Created-By: 1.5.0_05 (Sun Microsystems Inc.) Main-Class: com.snda.billgate.biz.SocketClientTest Class-Path: lib\activation-1.1.jar lib\aopalliance-1.0.jar lib\b...
Java工程,生成jar直接运行,提示找不到main函数
Java工程,生成jar直接运行,提示找不到main函数。程序在eclipse里运行的话是可以的,但是打包成jar运行就不可以
IntelliJ IDEA打包jar不成功?运行提示:找不到或无法加载
IntelliJ IDEA打包jar不成功?运行提示:找不到或无法加载。
Tomcat运行servlet下找不到类!!!
最近在学习Java Servlet,正拜读O'REILLY系列的Java书籍中的《Java Servlet编程》,在运行第三章的一个例子(该例子还是从O'REILLY网站上下载的)的时候出现了下面这个问题:找不到HttpServlet类,一般像该类问题到底是什么原因造成的呢(估计是路径问题没搞好)?还请哪位高手顺便说说Tomcat在运行Servlet程序时的查找路径是从哪开始找的呢?明明存在javax/servlet/http包但却找不着?看看到底如何解决该的错误......谢谢......谢谢......rn不甚感激......!!!rnrnrn本机运行环境变量如下:rnclasspath:%JAVA_HOME%\bin;.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;E:\Program Files\Java\tomcat-6.0.10\lib\servlet-api.jar;E:\Program Files\Java\com.oreilly.servlet\lib\cos.jarrnJAVA_HOME:E:\Program Files\Java\jdk1.5.0_09rnPath:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin;E:\Python24;E:\Program Files\Java\tomcat-6.0.10\lib\servlet-api.jar;C:\masm32\BINrnTOMCAT_HOME:E:\Program Files\Java\tomcat-6.0.10rnrnrn运行错误提示如下:(其中已经对web.xml设置好了注册名和运行所需要的类)rnrnHTTP Status 500 - rnrn-------------------------------------------------------------------------rnrntype Exception reportrnrnmessage rnrndescription The server encountered an internal error () that prevented it from fulfilling this request.rnrnexception rnrnjavax.servlet.ServletException: Error allocating a servlet instancern org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)rn org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)rn org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)rn org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)rn org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)rn java.lang.Thread.run(Unknown Source)rnrnrnroot cause rnrnjava.lang.NoClassDefFoundError: javax/servlet/http/HttpServletrn java.lang.ClassLoader.defineClass1(Native Method)rn java.lang.ClassLoader.defineClass(Unknown Source)rn java.security.SecureClassLoader.defineClass(Unknown Source)rn java.net.URLClassLoader.defineClass(Unknown Source)rn java.net.URLClassLoader.access$100(Unknown Source)rn java.net.URLClassLoader$1.run(Unknown Source)rn java.security.AccessController.doPrivileged(Native Method)rn java.net.URLClassLoader.findClass(Unknown Source)rn java.lang.ClassLoader.loadClass(Unknown Source)rn java.lang.ClassLoader.loadClass(Unknown Source)rn sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)rn java.lang.ClassLoader.loadClass(Unknown Source)rn org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1273)rn org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)rn java.lang.ClassLoader.loadClassInternal(Unknown Source)rn java.lang.ClassLoader.defineClass1(Native Method)rn java.lang.ClassLoader.defineClass(Unknown Source)rn java.security.SecureClassLoader.defineClass(Unknown Source)rn org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)rn org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:872)rn org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1325)rn org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)rn org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)rn org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)rn org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)rn org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)rn org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)rn java.lang.Thread.run(Unknown Source)rnrnrnnote The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.rnrnrn-------------------------------------------------------------------------rnrnApache Tomcat/6.0.10
相关热词 c# 线程结束时执行 c# kb mb 图片 c# 替换第几位字符 c#项目决定成败 c# 与matlab c# xml缩进 c#传感器基础 c#操作wps c# md5使用方法 c# 引用父窗口的组件