gpt4 book ai didi

ruby - 如何在 JRuby 中包含类依赖 jar?

转载 作者:行者123 更新时间:2023-12-04 15:50:36 26 4
gpt4 key购买 nike

我无法弄清楚如何包含/导入/要求 mydependency.jar 哪个 MyJavaClass(在 MyJavaClass.class 文件中) 取决于。 MyJavaClass 包含许多从 mydependency.jar 导入类的 import 语句。一切都在同一个目录中。

当我在命令行上运行 java -cp '.:mydependency.jar' MyJavaClass 时,我没有收到任何错误,并且通过在 main 中进行一些调用,我可以得到它按我想要的方式运行,但是当我在命令行上使用 JRuby 运行 ruby my_ruby_file.rb 时,我得到 NoClassDefFoundError 用于导入的第一个类(从 mydependency.jar) 在 MyJavaClass.class 文件中。错误的堆栈跟踪指向 my_ruby_file.rb 中的 java_import 行,因此它似乎没有正确找到从 mydependency.jar 导入的类> 包含在我的 MyJavaClass.class 文件中,即使它在正常的 Java 环境中运行良好。

# contents of my_ruby_file.rb

require 'java'
require './mydependency.jar'

java_import 'MyJavaClass'

MyJavaClass.new.myJavaInstanceMethod('argument')

最佳答案

我的 $CLASSPATH 环境变量没有设置,它需要设置以便 JRuby 能够找到我的 jar。在命令行上运行 export CLASSPATH=".:mydependency.jar" 并删除行 require './mydependency.jar' 后,它起作用了。

关于ruby - 如何在 JRuby 中包含类依赖 jar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53973727/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com