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
。
我是第一次使用 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
。