gpt4 book ai didi

java - 在 ruby​​ 中导入和使用 java 类

转载 作者:行者123 更新时间:2023-12-02 10:58:48 25 4
gpt4 key购买 nike

我有一个 ruby​​ 文件,其中包含 ruby​​ 项目的所有必需的 java_imports 。该文件(名为 java_import.rb)位于 lib/app/wrapper_classes/java_import.rb

我的java类位于package gallery;中的lib/app/gallery/*.java

我尝试过 include_package "gallery"include_class gallery.ThumbnailFileChooser,但我觉得我缺少关键知识。

这是我如何在我的 ruby 项目 中包含 java librairies 的示例。

module Awt
java_import javax.swing.JButton
java_import javax.swing.JFileChooser
end

所以问题是:我怎样才能为我的类(class)做同样的事情?

提前致谢。

最佳答案

我首先建议将您的类打包到 typical java fashion 中的 jar 文件中。 。然后,您只需将 require "myjar.jar" 添加到您的 JRuby 脚本中,并像使用 javax.swing 类一样使用您的类。

如果由于某种原因您无法做到这一点,apparently you can include直接.class文件如下:

Let's say I have 'myclass.class' which has a class called 'myclass' in 'mypackage.myclass'. This causes two problems because JRuby doesn't like non-Camelcased classes (because Modules have to have cap-Alpha starts I think).

First, create a directory (under lib/ for example - though not necessary) called mypackage and put myclass.class in there.

Then this should work:

require 'java' $CLASSPATH << 'lib'

myclass = JavaUtilities.get_proxy_class('mypackage.myclass')

@myclass = myclass.new

关于java - 在 ruby​​ 中导入和使用 java 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51506289/

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