Marathon JAVA 驱动程序 - 在从 Eclipse 导出的 JAR 文件中 运行 时出错
Marathon JAVA Driver - Error when running inside an exported JAR file from Eclipse
我有 Marathon JAVA 驱动程序可以在 Eclipse 中工作,当我 运行 来自 eclipse 的代码时它工作正常。但是,当我将项目导出为 运行nable JAR 文件,然后执行 JAR 文件时,出现以下错误并且应用程序未启动。
在 org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:61)
原因:java.lang.NullPointerException
在 net.sourceforge.marathon.javadriver.JavaProfile.(JavaProfile.java:205)
import java.io.IOException;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import net.sourceforge.marathon.javadriver.JavaDriver;
import net.sourceforge.marathon.javadriver.JavaProfile;
import net.sourceforge.marathon.javadriver.JavaProfile.LaunchMode;
import net.sourceforge.marathon.javadriver.JavaProfile.LaunchType;
public class SwingAutomationSample {
public static JavaDriver driver;
public static JavaProfile profile;
@BeforeClass
public void setUp() throws IOException {
try {
profile = new JavaProfile(LaunchMode.EXECUTABLE_JAR);
profile.setLaunchType(LaunchType.FX_APPLICATION);
profile.setExecutableJar("C:/Users/KarthikRaja/Desktop/Projects/xxyy.jar");
profile.setWorkingDirectory("C:/Users/KarthikRaja/Desktop/Projects");
driver = new JavaDriver(profile);
}catch(Exception e) {
System.out.println("java driver error ------------ " + e.toString());
}
}
@Test
public void Form15CBFill() throws Exception {
System.out.println("Inside Test Class");
}
}```
Marathon Java 驱动程序使用它的 jar 文件以便它可以设置 JAVA_TOOL_OPTIONS。所以它需要jar文件在文件系统中是可访问的。
请检查 JavaProfile.java 行号 204 以供参考。
快速修复导出 marathon jar 并将它们添加到 class 路径并编写批处理脚本来执行测试用例。
@Aditya,再次感谢您为我指明了正确的方向。以下步骤为我解决了这个问题。
- 下载 selenium-standalone-jar 并将其添加到项目构建路径
- 按照 Aditya 的建议,将项目导出为可运行的 JAR 文件,并选择“将所需的库复制到生成的 JAR 旁边的子文件夹”
- 在导出的 JAR 中,确保清单文件在类路径中包含 selenium-standalone-jar 和其他依赖项
这解决了我的问题。
我有 Marathon JAVA 驱动程序可以在 Eclipse 中工作,当我 运行 来自 eclipse 的代码时它工作正常。但是,当我将项目导出为 运行nable JAR 文件,然后执行 JAR 文件时,出现以下错误并且应用程序未启动。
在 org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:61) 原因:java.lang.NullPointerException 在 net.sourceforge.marathon.javadriver.JavaProfile.(JavaProfile.java:205)
import java.io.IOException;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import net.sourceforge.marathon.javadriver.JavaDriver;
import net.sourceforge.marathon.javadriver.JavaProfile;
import net.sourceforge.marathon.javadriver.JavaProfile.LaunchMode;
import net.sourceforge.marathon.javadriver.JavaProfile.LaunchType;
public class SwingAutomationSample {
public static JavaDriver driver;
public static JavaProfile profile;
@BeforeClass
public void setUp() throws IOException {
try {
profile = new JavaProfile(LaunchMode.EXECUTABLE_JAR);
profile.setLaunchType(LaunchType.FX_APPLICATION);
profile.setExecutableJar("C:/Users/KarthikRaja/Desktop/Projects/xxyy.jar");
profile.setWorkingDirectory("C:/Users/KarthikRaja/Desktop/Projects");
driver = new JavaDriver(profile);
}catch(Exception e) {
System.out.println("java driver error ------------ " + e.toString());
}
}
@Test
public void Form15CBFill() throws Exception {
System.out.println("Inside Test Class");
}
}```
Marathon Java 驱动程序使用它的 jar 文件以便它可以设置 JAVA_TOOL_OPTIONS。所以它需要jar文件在文件系统中是可访问的。
请检查 JavaProfile.java 行号 204 以供参考。
快速修复导出 marathon jar 并将它们添加到 class 路径并编写批处理脚本来执行测试用例。
@Aditya,再次感谢您为我指明了正确的方向。以下步骤为我解决了这个问题。
- 下载 selenium-standalone-jar 并将其添加到项目构建路径
- 按照 Aditya 的建议,将项目导出为可运行的 JAR 文件,并选择“将所需的库复制到生成的 JAR 旁边的子文件夹”
- 在导出的 JAR 中,确保清单文件在类路径中包含 selenium-standalone-jar 和其他依赖项
这解决了我的问题。