[英]How do I pass arguments to Main Application Class using Jemmy in JRuby?
I'm automating a Swing GUI application using JRuby and Jemmy library. 我正在使用JRuby和Jemmy库自动化Swing GUI应用程序。 The application takes arguments when launching.
应用程序在启动时会接受参数。 I was able to launch the application from command line by passing the arguments after the Main Class name.
我可以通过在Main Class名称后面传递参数来从命令行启动应用程序。 Is there a way to do the same using Jemmy in JRuby?
有没有办法在JRuby中使用Jemmy来做同样的事情?
From command line 从命令行
java -cp CLASSPATH org.sample.MainApplication arg1 arg2
java -cp CLASSPATH org.sample.MainApplication arg1 arg2
From Jemmy documentation 从Jemmy文档中
ClassReference newApp = ClassReference('org.sample.MainApplication');
ClassReference newApp = ClassReference('org.sample.MainApplication'); newApp.startApplication();
newApp.startApplication();
What I've tried in JRuby 我在JRuby中尝试过的
main_app = ClassReference.new('org.sample.MainApplication')
main_app = ClassReference.new('org.sample.MainApplication')
main_app.start_application()
main_app.start_application()
After much trial & error I figured out the issue. 经过反复尝试和错误后,我发现了问题所在。 I was sending incorrect format for arguments.
我发送的参数格式错误。
main_app.start_application(['arg1','arg2'].to_java(:string)) did the trick.
main_app.start_application(['arg1','arg2']。to_java(:string))达到了目的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.