关于JAVA打包成jar包的问题

简介:    前几天在对JAVA文件打包成jar包时,遇到一些问题,至今未能解决,记录下来,还望大家指教。   在将多个CLASS文件打包成jar包时,比如我要把放在/mysoft/bin目录下的类文件都打包到一个jar包,编写myMANIFEST.MF文件,里面的内容是对Main-Class:的指定,比如我要指定的是MainClass,然后编写的内容是Main-Class: MainClass,并把它放在/mysoft,当前目录也是它,然后运行jar cvfm test.jar myMANIFEST.MF -C bin/ .。

   前几天在对JAVA文件打包成jar包时,遇到一些问题,至今未能解决,记录下来,还望大家指教。

 

  在将多个CLASS文件打包成jar包时,比如我要把放在/mysoft/bin目录下的类文件都打包到一个jar包,编写myMANIFEST.MF文件,里面的内容是对Main-Class:的指定,比如我要指定的是MainClass,然后编写的内容是Main-Class: MainClass,并把它放在/mysoft,当前目录也是它,然后运行jar cvfm test.jar myMANIFEST.MF -C bin/ .。但是生成之后的jar包并不能执行。

  然后我打开jar包,发现里面的类文件被放在目录bin/./下,我很奇怪的是生成了一个“.”的目录,不知为何因。而在执行命令时,少了最后的一个点是不能打包的。我修改了mf文件,重新指定为Main-Class:bin/./MainClass,或是作其它的路径修改,就是无法运行。最后只能沮丧地把bin/./的类文件都删去,然后重新把那些类添加到jar包的根目录下,mf文件的主要内容还是一开始的Main-Class:MainClass,这样才能运行。

  我不知道是不是自己的操作方法有误。如果不是的话,对jar命令中提供将同一目录下的class文件打包到一个jar包的方法我就感到很纠结了,还不如先把一个类文件打包进去,然后用压缩软件打开,再把其它文件拖进去呢。不然还有什么办法呢?

 

  此问题已解决,见http://blog.csdn.net/maosidiaoxian/article/details/6521139

目录
相关文章
|
2月前
|
安全 Java API
JAVA并发编程JUC包之CAS原理
在JDK 1.5之后,Java API引入了`java.util.concurrent`包(简称JUC包),提供了多种并发工具类,如原子类`AtomicXX`、线程池`Executors`、信号量`Semaphore`、阻塞队列等。这些工具类简化了并发编程的复杂度。原子类`Atomic`尤其重要,它提供了线程安全的变量更新方法,支持整型、长整型、布尔型、数组及对象属性的原子修改。结合`volatile`关键字,可以实现多线程环境下共享变量的安全修改。
|
7天前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
19 3
|
18天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
25 4
|
21天前
|
Java Maven Android开发
【Azure Developer】VS Code打包Java maven Project 遇见 BUILD FAILURE
Unknown lifecycle phase "lean". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>
|
1月前
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
24 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
20天前
|
数据采集 分布式计算 Java
Kettle的Java开发环境需要什么jar包?
【10月更文挑战第24天】Kettle的Java开发环境需要什么jar包?
63 2
|
29天前
|
Java Maven 数据安全/隐私保护
如何实现Java打包程序的加密代码混淆,避免被反编译?
【10月更文挑战第15天】如何实现Java打包程序的加密代码混淆,避免被反编译?
42 2
|
1月前
|
Java Apache Maven
Java/Spring项目的包开头为什么是com?
本文介绍了 Maven 项目的初始结构,并详细解释了 Java 包命名惯例中的域名反转规则。通过域名反转(如 `com.example`),可以确保包名的唯一性,避免命名冲突,提高代码的可读性和逻辑分层。文章还讨论了域名反转的好处,包括避免命名冲突、全球唯一性、提高代码可读性和逻辑分层。最后,作者提出了一个关于包名的问题,引发读者思考。
Java/Spring项目的包开头为什么是com?
|
1月前
|
Java C++
做了个Java打包工具,可以双击启动了!
本文介绍了作者日常使用Java和Swing进行开发的经验,以及Java程序分发时遇到的问题,如需要JRE环境。文中列举了几种常见的Java程序打包方法,并对比了各自的优缺点,最后作者结合这些方案,利用Winform开发了一款工具,将Java程序打包成二进制可执行文件,简化了分发流程。
做了个Java打包工具,可以双击启动了!
|
1月前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
103 4