当前位置: 首页 > 面试题库 >

从其中的Class查找罐子的路径?

朱承载
2023-03-14
问题内容

插件xyz应该在Java项目之上运行并生成一些Java代码。在构建和运行时,此代码将需要插件jar中可用的类。因此,插件的jar(或安装目录)应出现在构建类路径中。

插件如何才能以可移植的方式找出其自己的jar /安装目录的确切路径,或者为此找到某个关联插件的jar的路径?

背景是我要创建一个向导,用户可以运行该向导以在项目上启用xyz性质。应该为用户提供在哪里可以找到所需运行时功能的有意义的默认值,并且给定的库将添加到构建路径中。


问题答案:

我们使用它来查找类的位置:

public static URL getLocation(final Class cls) {
  final ProtectionDomain pd = cls.getProtectionDomain();
  final CodeSource cs = pd.getCodeSource();
  return cs.getLocation();
}

不知道它来自哪里。



 类似资料:
  • 我在容器中运行SpringBoot的一大组服务上工作。我们构建一个“Spring Boot Jar”并用“java -jar”执行它作为容器中的启动脚本。 我被要求实现一些概念上看起来很简单的东西,但我发现它可能相当粗糙。 需要发生的是,脚本需要检查映射卷中的特定 jar 文件,如果存在,请使用增强的类路径(包括其他 jar)运行Spring启动服务。 我意识到这非常混乱,因为当你用“java -

  • 我有一个需求,我想找到运行的jar中的jar的路径。假设有一个名为example-1.0.0.jar的罐子在一个名为main-1.0.0.jar.的运行罐子里,我想知道运行罐子里存在的罐子的路径。 编辑1:例如,jar是项目中的一个依赖项。例如,假设我的项目中有一个log4j依赖项,我想知道log4j jar在类中的路径。我怎样才能找到路?

  • 我在JavaFX中创建了一个迷宫游戏,用户可以创建自己的迷宫并玩它。迷宫是使用带有CSS IDs的按钮构建的,CSS IDs取决于关卡临时存储的二维数组。 问题出现在项目的下一部分。我创建了一个生成随机迷宫的算法。为了使水平成为可能,我需要检查迷宫是否可解(即,你可以从起点(0,3)到终点(6,3))。 我使用相同的显示算法创建了一个单独的项目,类如下: 主要.java Runner.java M

  • 我目前有一个代码片段,其中对于每个类别,它将找到子类别: 将递归获取一个类别的子级: 目前,使用,只检索子类别的子类别,因此如果每个子类别都有自己的子类别,则不会将其保存到子类别中。 我如何显示子子类别给我们的子类别? 我想用我的代码做的是获取一个父级,获取它的子级,然后将这些子级中的每一个视为父级,递归地获取它的子级,但是我的JSON输出并没有反映这一点。只有父对象有子对象-子对象没有子对象(尽

  • FrameworkBaseImpl有一个main,它调用Jetty,传递FrameworkRestService WAR。 我试图让Spring在FrameworkBaseImpl的FrameworkMain类的(唯一)实例中注入一个RestService实例作为字段成员。我的Spring指向FrameworkRestService项目中的FrameworkRestService类来实现restS

  • 问题内容: 我在eclipse的java项目中具有这样的结构: src / com / myprogram /…/ foo.java res / icon.png 。项目 … 我知道您可以使用以下方式从罐子中加载图像 当您尝试直接使用eclipse运行应用程序时会出现问题,因为(我想)res文件夹不在src文件夹中,则会显示 。我想为源代码和资源提供单独的文件夹。 另外,我发现我可以将文件夹添加到