如何创建具有包结构的 jar 文件?

新手上路,请多包涵

我有一个文件夹结构

/com/cdy/ws/a.class files
/com/cdy/ws/b.class files
/com/cdy/ws/c.class files

当我运行以下命令“jar cvf asd.jar *.class”时,它会提供包含所有类文件的 jar。但是没有生成文件夹结构。所有类文件都必须在“com.cdy/ws”下,但所有类都在 META-INF 的同一级别。谁能告诉我生成包结构的命令是什么?

谢谢

原文由 Anderson 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 679
2 个回答

您需要开始在文件的 根目录 创建 JAR。

因此,例如:

 jar cvf program.jar -C path/to/classes .

假设 path/to/classes 包含 com 目录。

仅供参考,现在大多数人直接使用 jar 命令相对不常见,因为他们将使用 AntMaven 等构建工具来处理(以及构建的其他方面)。允许其中一个工具处理构建的所有方面是非常值得的,并且使用好的 IDE 来帮助编写 build.xml (Ant) 或 pom.xml 会更容易 --- (马文)。

原文由 Adam Batkin 发布,翻译遵循 CC BY-SA 3.0 许可协议

你要

$ jar cvf asd.jar .

指定目录(例如 . )到 jar 来自。这将在 jar 文件中维护您的文件夹结构。

原文由 Brian Agnew 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题