一般用ant打jar的时候不用指定程序的入口!这个jar一般是给其他app引用的。

但是如果该jar就是程序的启动jar。例如:

java -jar abc.jar

 这个时候需要指定jar的入口类!也就是指定用哪个类的main方法为入口!否则会报错!

Failed to load Main-Class manifest attribute from abc.jar

 

方法如下:

在创建jar的target里面添加manifest标签!

 

<jar destfile="${dist.dir}/ant_jar.jar" basedir="${classes.dir}">

                <exclude name="**/*Test.*"/>

                <exclude name="**/Test*.*"/>

                <manifest>

                    <attribute name="Main-Class" value="com.ant.action.Action"/>

                    <attribute name="Class-Path" value="junit.jar"/>

                </manifest>

            </jar>

 

用winRar打开jar文件,打开MANIFEST.MF文件,内容如下:

 

Manifest-Version: 1.0

Ant-Version: Apache Ant 1.7.1

Created-By: 20.0-b11 (Sun Microsystems Inc.)
Main-Class: com.ant.action.Action



Class-Path: junit.jar

Ant打jar包指定MainClass的更多相关文章

  1. Ant打jar包时,参数名被修改的问题

    https://blog.csdn.net/landehuxi/article/details/42678117 使用Ant打jar包后,发现jar包中的方法名会在前面自动添加了“param”前缀,导 ...

  2. Linux中jar包指定端口启动并记录日志

    Linux中jar包指定端口启动并记录日志: java -jar -Dserver.port=38080  group-buying-0.0.1-SNAPSHOT.jar   >log.log ...

  3. ant 打 jar 包添加 manifest.mf 文件

    经查询 ant 有 <manifest> 任务可以创建 manifest文件(https://ant.apache.org/manual/Tasks/manifest.html) 但尝试在 ...

  4. linux 启动jar包 指定yml配置文件和输入日志文件

    命令为: nohup java -jar project.jar  --spring.config.location=/home/project-conf/application.yml >  ...

  5. 执行jar包指定main

    java包中多个main,需要指定执行java -cp iot-device-sdk-java-0.0.5-SNAPSHOT.jar com.inspur.iot.client.sample.paho ...

  6. ant执行jar包中的main方法

    <project name= "myproject" basedir= "." default="main">    <p ...

  7. 产品打包工具的制作,ant,编译源码,打jar包,打tag,打war包,备份release版本等

    1.  在进行打包工具的制作前,需要准备的软件有: svnant-1.3.1 作用是让ant和svn相关联 apache-ant-1.9.7 需要设置ant_home,path,我的配置是: ANT_ ...

  8. 将 Spring boot 项目打成可执行Jar包,及相关注意事项(main-class、缺少 xsd、重复打包依赖)

    最近在看 spring boot 的东西,觉得很方便,很好用.对于一个简单的REST服务,都不要自己部署Tomcat了,直接在 IDE 里 run 一个包含 main 函数的主类就可以了. 但是,转念 ...

  9. java class生成jar包(转)

    进入dos操作符窗口cd进入要打成jar包的class文件所有文件夹目录jar cvf [生成jar的名称.jar] [列出class文件] //若有多个,以空隔隔开 如:一.操作零散的单个或几个cl ...

随机推荐

  1. [CoffeeScript] Level 4 Arrays, Objects, Iterations -- Ex

    Coffee on the Range Create an array with numbers 1 until 10 using the inclusive (two dot) range synt ...

  2. 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程

    前些天虚拟机VMware Workstation 9出来,相信大家都已经熟悉VM9了,至于MAC OSX 10.8系统,那也是出来一段时间了,本篇文章就是来讲解VMware Workstation 9 ...

  3. direction:rtl demo

    <style> body {font:14px/18px Consolas;} div { width:100px;padding:10px; margin:10px 0px 30px 0 ...

  4. 0c-35-自动释放池使用注意

    .autorelease使用注意 )并不是放到自动释放池中,都会自动加入到自动释放池 1.1) 因为没有调用autorelease方法,所以对象没有加入到自动释放池. int main(){ @aut ...

  5. select,epoll的比较

    机制: select:只支持水平触发(数据不处理完无限通知) epoll:支持水平触发和边缘触发(仅通知一次) 单进程监控FD个数 select: 由FD_SETSIZE设置,默认值是2048.在大量 ...

  6. 分布式缓存技术redis学习(一)——redis简介以及linux上的安装

    redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...

  7. IIS 之 HTTP 错误 500.19(无法访问请求页面,因为该页的相关配置数据无效)

    HTTP 错误 500.19- Internal Server Error 错误解决方法,碰到这个问题的原因有很多,大家可以参考下,看属于哪种情况. 刚在本机部署了一个WebService测试,浏览的 ...

  8. 1.7.4.1 Function Queries-函数查询

    1 . Function Queries 函数查询使你可以使用一个或者多个数字字段的实际的值生成一个关联的得分(score),函数查询支持DixMax,eDisMax,标准的查询解析. 函数查询使用函 ...

  9. Android&iOS崩溃堆栈上报

    Android&iOS崩溃堆栈上报 原文地址:http://www.cnblogs.com/songcf/p/4885468.html 通过崩溃捕获和收集,可以收集到已发布应用(游戏)的异常, ...

  10. centos 下 yum安装和卸载软件

    安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删 ...