当前位置: 首页 > 知识库问答 >
问题:

解析外部依赖项的类路径

公良浩邈
2023-03-14

我有一个名为.jar的罐子,它依赖于我的外部库。

执行jar-tf a.jar会得到以下输出,

META-INF/                
META-INF/MANIFEST.MF     
com/      
com/os/          
com/os/hw/          
com/os/hw/HelloWorld.class       
com/os/hw/HwUtil.class 

我尝试用两种方式运行jar

并为DependedClass获得了NoClassDefFoundError

java-jar a.jar按如下所示更改清单条目后

清单-版本:1.0
创建-由:1.6.0_05(Sun Microsystems Inc.)
主-类:com.os.hw.helloworld
类-路径:c://users/vinay/desktop

但这一次它为HelloWorld类本身抛出了NoClassDefFoundError

当我将外部lib打包到jar中,并在清单文件中使用jar名称作为类路径条目时,它就可以工作了。有没有一种html" target="_blank">方法可以解决这个问题而不将外部lib打包到jar中呢?

共有1个答案

范高刚
2023-03-14

我认为你不能把-classpath和-jar结合起来。您可以这样做:

java -cp C:/Users/vinay/Desktop;a.jar com.os.hw.HelloWorld

这假定。jar位于当前文件夹中(或者您也可以将完整路径添加到。jar中)。

将清单的类路径项硬编码到本地计算机上的路径永远不是正确的解决方案:)

 类似资料:
  • 我有一个多项目的构建设置与gradle将包含多个android应用程序和库。 我想应用某些分级插件只对一些子项目。(比如android gradle插件只到android子项目)因此我在和插件声明中添加了类路径依赖项到两个android子项目: 和 。问题是gradle找不到android gradle插件: 错误:(%1,%1)评估项目“:ShopPr:Presentation”时出现问题。找不

  • 为什么当我将apache commons编解码器和apache commons io依赖项添加到我的项目中时,所有的gradle任务都变得非常慢(超过5分钟)?明确地说,执行构建任务仍然有效,只是需要很长时间。慢时,分级输出为 如果我不包括最后两个类路径依赖项(编解码器和io),buildscript会快得多。我正在通过Gradlew使用Gradle1.10。

  • 我正在使用IntelliJ开发Spark应用程序。我正在遵循这个关于如何使intellij与SBT项目良好地工作的指导。 但这样我就无法在IntelliJ内部运行应用程序,因为类路径中不会包含spark依赖项。

  • 我在 ubuntu 上使用 android studio 1.5.1。我想将谷歌分析添加到我的Android应用程序中。所以我遵循了谷歌分析文档,但是当我将mavenCentral()更改为jcenter()时,Android studio无法解析此类路径: 当我按下“同步项目与Gradle文件`按钮”,Android studio大约需要15分钟,最后说: 错误:连接超时。如果您使用HTTP代理

  • 当我试图导入依赖项时,我收到以下错误: 请帮帮我,我哪里错了? 事先谢谢你

  • 我是一名新的Android学习者,我正在为语言翻译制作我的第一个Android应用程序。在添加了一些依赖项之后,我遇到了一些问题。我该怎么解决这个问题? Gradle同步失败:无法解决配置的所有依赖项: app: dedegRuntimeClasspath。无法确定android.arch.lifecycle的工件: livedata: 1.1.1:脱机模式下没有缓存版本有关详细信息,请参阅IDE