问题标签 [onejar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
164 浏览

java - Applet 的一罐

我有一个需要导入另一个库的小程序。我使用 Apache Ant 将这个小程序和库构建到相同的 jar 文件中,但是无法将类与库连接起来。我得到了 NoClassDefFoundError。

因此,我决定在 Ant 中使用 one-jar。One-jar 创建一个包含库和类的 jar 文件。但是我写的类在主罐子里的另一个罐子里。目录如下所示:

  • main.jar
    • com
    • 文档
    • 主要的
      • 小程序.jar
        • 我的Applet.class

我需要访问 applet.jar 文件中的 MyApplet 类,但问题是如何导入第二个 jar 中的 applet 类。不能在小程序标签中写入第二个属性。

one-jar 中是否有任何选项可以只构建一个带有库的 jar?我应该使用什么?

0 投票
0 回答
321 浏览

java - 使用 OneJar 时如何获取资源目录的 URL?

我需要将根“某物”传递给一段使用资源的代码。我知道这个“东西”不能是文件,因为这在 JAR 中不起作用。所以我传递了一个 URL。

在我开始使用 OneJar 之前,我将一个 URL 转换为

进入

并将其用作根 URL。有了 OneJar,我得到了

并将其转化为

但无论我用这个 URL 做什么,都不起作用。我得到的最好的是由加载引起的堆栈跟踪new ImageIcon(url)

0 投票
1 回答
83 浏览

java - OneJar URL 有什么问题?

我一直认为URLs 可以通过这个构造函数组成,并且类似于

我明白了

正如预期的那样。1但是,从OneJar我获得了一个看起来很奇怪的 URL 和结果

简直就是

父路径被简单地删除。我尝试用 or 为这些部分添加前缀或后缀/.但没有任何变化。更新:这不是真的,见下文。

这是一个错误还是我错过了什么?我必须通过字符串来做吗(感觉很hacky)。

更新:

我看到尾部斜线确实有帮助。无论出于何种原因,onejar使用点作为分隔符,但它似乎也接受斜线。因此,我可以将原始 URLonejar:foo.bar转换为字符串、追加/和转换回 URL。然后可以通过上面提到的构造函数组合结果,所以它似乎是正确的方法。


1 除非我忘记了斜杠,我经常这样做,但这是另一回事。

0 投票
1 回答
731 浏览

maven - 将 perf4j 与 aspectj 一起使用时出错 (NoSuchMethodError)

我正在尝试将 CTW 与 aspectj 一起使用,以使用 perf4j 分析我的应用程序(cumulusrdf)。

我可以用maven编译一切就好了。控制台输出包含我用于使分析工作的方法的条目:

我正在使用aspectj:compile package构建目标。当我尝试运行生成的 one-jar 时,出现以下异常:

我不使用任何参数,除了我的应用程序的参数。

在我的 pom.xml 中,我有以下相关部分:

aspectj插件的定义:

相关工件的依赖关系:

one-jar插件的定义:

有人知道我做错了什么吗?

0 投票
2 回答
4108 浏览

java - 使用 onejar-maven-plugin 构建可运行的 jar

如何让它构建名称中不包含“one-jar”的常规工件?我在我的 POM 中使用以下设置:

0 投票
1 回答
264 浏览

mysql - 使用 C3P0、OneJar 和 MySQL 时出现死锁

使用 C3P0、OneJar 和 MySQL C3P0 设置时出现死锁如下

但是当我使用 jtds 连接 SQL 数据库时,一切正常吗?谁能告诉我出了什么问题?

0 投票
0 回答
701 浏览

scala - 如何处理带有非标准工件的 sbt 多项目?

我想做什么:

首先,让我介绍一个我想要实现的(非常)简化的版本。考虑以下多项目:

后端与oneJar打包在一起,并作为一个独立的进程执行后台工作。前端是一个网络服务播放项目(打包为 zip 文件dist)。部署器是另一个与oneJar打包的自可执行 jar ,但打包已修改为包含其他项目工件。部署者的工作是初始化系统。它将其他工件部署到指定的机器上,并初始化分布式系统。

我的问题是什么:

基本上,我正在尝试(不成功)将播放的 dist zip 工件和后端 oneJar 自我可执行工件打包在部署器 jar 中(与其他资源文件一起)

部署器 jar 应如下所示:

到目前为止我有什么:

构建.sbt

后端/build.sbt

前端/build.sbt

部署者/build.sbt

请注意,在根 build.sbt 中,我有每个配置的类路径依赖项 "optional->compile"。我在查看文件后把它放在那里ivy.xml

并且看到该dist.zip工件仅在optional范围内找到,我想我可以通过这种方式将这个工件作为依赖项(虽然似乎没有工作......)。另外,当我尝试注释掉的行时,我收到一个错误,说它是错误的类型。

====================================================

当我写这个问题时,我发现我做错了什么......

更新:

我错过了一些东西(很多片段被复制和粘贴......)。首先,部署者根本不应该dependOn(backend,frontend)。只是aggregate。此外,这些工件(后端和前端)根本不应该在部署者的类路径上可见。所以这一行:

是不需要的。此外,转换文件mappings in oneJar中的代码deployer/build.sbt可能要简单得多。只需要照顾资源。最后,注释掉的行实际上应该是:

差不多就是这样。

0 投票
1 回答
1178 浏览

swing - 独立应用程序的 NetBeans 和 One-Jar 创建

请帮帮我,我用两个外部 jar 文件开发了一个简单的应用程序。在清理和构建时,它正在为应用程序和 dist 目录中的库文件夹创建一个 jar 文件。当我尝试作为 jar 执行时,它执行得很好

但是当我使用launch4j将jar转换为exe文件时,转换后,执行报告NoClassDefFoundError。

我希望,One-Jar 是解决 ma 问题的方法,但是如何在 Netbeans IDE 中做 One-Jar 或如何将所有依赖库与应用程序一起包装?

0 投票
0 回答
142 浏览

scala - SBT 自定义任务挂起

taskKey我有以下习惯built.sbt

(这是我第一次尝试定义自定义 SBT 任务,所以要小心愚蠢)

虽然很复杂,但它运行良好并产生了我想要的结果。

但是,当我将以下内容添加到我的built.sbt

每当我运行makeDeployJar任务时,它在输出后无限期挂起:

SBT 是一个复杂的野兽,而我是 SBT 的新手——我做错了什么,还是这是 SBT 中的一个错误?

0 投票
1 回答
467 浏览

java - jar 在受保护的 Windows 目录中时无法获取 jar 资源

我在自动执行的 .jar 中有一个属性文件。实际上,属性文件在 jar 里面的一个 jar 中(用一个 jar 打包)。如果我从桌面运行我的 jar,它可以正常工作,但是当我将它放在Program Files目录中时它会失败。

这是我用来加载属性文件的代码:

我做了一些实验,试图获得比“MissingResource”更好的错误消息,但到目前为止它要么有效,要么无效。除非它位于 Program Files 目录中,否则这里还有一些可以工作的代码:

这是 的完整异常ResourceBundle.getBundle,其他函数仅在无法加载文件时返回 null:

所以问题是:当 jar 在Program Files目录中执行时,如何从 jar 加载资源包?

这是一个开源项目,完整的源代码在这里:https ://github.com/winder/Universal-G-Code-Sender

有问题的罐子在这里:https ://github.com/winder/builds/blob/master/UniversalGCodeSender/UniversalGcodeSender-v1.0.7.zip?raw=true