RoutingError(无法加载Javaclasshello.MyFirstJavaProgram)

RoutingError (cannot load Java class hello.MyFirstJavaProgram)

我是第一次使用 jruby,我正在尝试加载一个 jar 文件,稍后我将尝试发送参数和 运行 一些东西。

我使用教程使用下面的代码编写示例 hello world java 程序

package test_pack;

public class MyFirstJavaProgram {

    public static void main(String []args) {
       System.out.println("Hello World");
    }
}

我将 helloworld.java 文件放在 test_pack 文件夹中,然后我使用命令将其打包以生成 .jar 文件。

我把.jar文件放到了rails的lib目录下,用下面的代码调用

class WebhookController < ApplicationController

  require "java"
  require "hello.jar"
  java_import "hello.MyFirstJavaProgram"
  Java::test_pack::MyFirstJavaProgram.main()


  def check

  end


end

但它给了我错误

cannot load Java class hello.MyFirstJavaProgram

显然我的路径是错误的,但我不知道如何修复它,欢迎提供任何线索!

java_import "test_pack.MyFirstJavaProgram"

应该可以解决问题。

PS。此外,在 java 世界中,您应该将文件命名为与 class 名称相同的名称。在您的情况下,您的文件名应该是 MyFirstJavaProgram.java,而不是 helloworld.java