标签: jar

什么是maven-shade-plugin,为什么要重新定位Java包?

我发现某人的pom.xml中使用了maven-shade-plugin.我之前从未使用过maven-shade-plugin(我是Maven n00b),所以我试着理解使用它的原因及其作用.

我查看了Maven文档,但是我无法理解这句话:

"这个插件提供了将工件打包在超级jar中的功能,包括它的依赖关系和阴影 - 即重命名 - 一些依赖项的包." 页面上的文档似乎不是新手友好的.

什么是"超级罐子?" 为什么有人想制作一个?重命名依赖项包的重点是什么?我试图通过maven-shade-plugin apache页面上的示例,例如"为Uber Jar选择内容",但我仍然无法理解"着色"所取得的成就.

任何指向说明性示例/用例的指针(解释为什么在这种情况下需要着色 - 解决了什么问题)将不胜感激.最后,我什么时候应该使用maven-shade-plugin?

java jar maven maven-shade-plugin

262
推荐指数
3
解决办法
8万
查看次数

maven范围编译和JAR打包之间的区别

maven范围compileprovided何时将工件构建为JAR 之间有什么区别?如果它是WAR,我明白 - 工件将包含在WEB-INF/lib中或不包含在WEB-INF/lib中.但是在JAR的情况下它并不重要 - 不包括依赖性.当它们的范围是compile或时,它们必须在类路径上provided.我知道provided依赖关系不是传递性的 - 但它只是一个区别吗?

jar maven

246
推荐指数
5
解决办法
24万
查看次数

在几十个JAR文件中找到一个类?

你如何在很多jar文件中找到特定的类名?

(寻找实际的类名,而不是引用它的类.)

java jar class project-structure text-search

237
推荐指数
9
解决办法
20万
查看次数

在Windows上运行JAR文件

我有一个名为helloworld.jar的JAR文件.为了运行它,我在命令行窗口中执行以下命令:

java -jar helloworld.jar
Run Code Online (Sandbox Code Playgroud)

这工作正常,但如何通过双击执行它?我需要安装任何软件吗?

java jar executable-jar

215
推荐指数
11
解决办法
111万
查看次数

是什么导致java.lang.IncompatibleClassChangeError?

我将Java库打包为JAR,java.lang.IncompatibleClassChangeError当我尝试从中调用方法时,它会抛出很多s.这些错误似乎是随机出现的.什么类型的问题可能导致此错误?

java runtime-error jar binary-compatibility

212
推荐指数
5
解决办法
28万
查看次数

从jar中读取资源文件

我想从我的jar中读取资源,如下所示:

File file;
file = new File(getClass().getResource("/file.txt").toURI());
BufferredReader reader = new BufferedReader(new FileReader(file));

//Read the file
Run Code Online (Sandbox Code Playgroud)

并且它在Eclipse中运行时工作正常,但是如果我将它导出到jar中运行它就会出现IllegalArgumentException:

Exception in thread "Thread-2"
java.lang.IllegalArgumentException: URI is not hierarchical
Run Code Online (Sandbox Code Playgroud)

而且我真的不知道为什么,但经过一些测试我发现如果我改变了

file = new File(getClass().getResource("/file.txt").toURI());
Run Code Online (Sandbox Code Playgroud)

file = new File(getClass().getResource("/folder/file.txt").toURI());
Run Code Online (Sandbox Code Playgroud)

然后它的工作正好相反(它适用于jar而不是eclipse).

我正在使用Eclipse,我的文件夹在一个类文件夹中.

java resources jar file embedded-resource

207
推荐指数
5
解决办法
28万
查看次数

查看.jar​​文件的内容

查看jar文件中的类,方法,属性等最简单的方法是什么?我正在寻找相当于非常有用的Lutz Roeder .NET Reflector - for Java的东西

java jar viewer

201
推荐指数
10
解决办法
32万
查看次数

什么版本的javac构建了我的jar?

如何判断使用哪个版本的Java编译器构建jar?我有一个jar文件,它可以在三个JDK中的任何一个中构建.我们需要确切地知道哪一个,所以我们可以证明兼容性.编译器版本是嵌入在类文件或jar中的某个位置吗?

java jar

200
推荐指数
9
解决办法
17万
查看次数

如何运行JAR文件

我创建了一个这样的JAR文件:

jar cf Predit.jar *.*
Run Code Online (Sandbox Code Playgroud)

我通过双击它来运行这个JAR文件(它不起作用).所以我从DOS提示符运行它,如下所示:

java -jar Predit.jar
Run Code Online (Sandbox Code Playgroud)

它引发了"无法加载主类"异常.所以我解压缩了这个JAR文件:

jar -xf Predit.jar
Run Code Online (Sandbox Code Playgroud)

我运行了类文件:

java Predit
Run Code Online (Sandbox Code Playgroud)

它运作良好.我不知道为什么JAR文件不起作用.请告诉我运行JAR文件的步骤

java jar

192
推荐指数
6
解决办法
61万
查看次数

在Eclipse中自动将项目构建到JAR中

我有一个Eclipse项目,我希望自动将我的Java项目内置到JAR中.我知道我可以选择将项目导出到JAR中; 如果我点击右键; 但我真正想要的是,像Eclipse一样自动构建项目的.class文件并将它们放在目标文件夹中; 它还应该自动构建JAR并在某个或特定位置复制最新的JAR.

是否有以这种方式配置Eclipse的选项,以自动构建JAR?

只是为了让人清楚,耐心地回答我的问题; 我不是把ANT视为解决方案; 因为我已经使用它了,但我希望它可以通过基于时间的触发器或通过更改立即构建来自动启动.

java eclipse jar

169
推荐指数
5
解决办法
22万
查看次数