// Label: image
driver.findElement(By.id("uploadimage")).click();
//for 1mb file uploading
Runtime.getRuntime().exec("D:\\netxploretesting\\unifytreewebautomation\\src\\test\\java\\executables\\fileupload.exe"+" "+"E:\\images\\profile.JPG");
//assertion for message display
assertTrue(driver.findElement(By.xpath("//strong[contains(text(),\"You are exceeding the size limit, it can't be more\")]")).getText().matches("You are exceeding the size limit, it can't be more than 512 KB."));
System.out.println(driver.findElement(By.xpath("//strong[contains(text(),\"You are exceeding the size limit, it can't be more\")]")).getText());
您可以将exe与包一起分发,并将其保存在源代码中,但这实际上是一种糟糕的做法。然而,如果你别无选择,我可以建议以下方式:
exe
文件放入资源
文件夹资源
复制到文件系统中的某个位置。JAR
(exe
文件将作为资源
放置到JAR
)下面是一个简单的例子,说明如何实现第2和第3点:
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws InterruptedException, IOException {
// Copy file from resources to file system (path taken from the command line argument)
InputStream is = Main.class.getResourceAsStream("Autoit.exe");
File exeFile = new File(args[0]);
FileOutputStream fos = new FileOutputStream(exeFile);
byte bytes[] = new byte[1000];
int k = 0;
while((k = is.read(bytes)) != -1){
fos.write(bytes, 0, k);
}
fos.close(); // Do not forget to close the outputstream, otherwise your code will be holding the file and it won't be possible to execute it
// Below is just an example on how you can execute the file after copying
List<String> commands = new ArrayList<String>(); //
commands.add(args[0]); // Start file with argument
commands.add("E:\\images\\profile.JPG"); //
Process p = new ProcessBuilder().command(commands).start();
InputStream i = p.getInputStream(); //
Scanner scanner = new Scanner(i); //
while (scanner.hasNextLine()){ // Print the output of the file
System.out.println(scanner.nextLine()); //
} //
}
}
java -jar mysuper.jar c:/Folder_To_Store_Copy_Of_Autoit/Autoit.exe
问题内容: 我将以下JavaScript文件“ test.js”编译为“ test.class”: 我想在简单的Java程序“ run.java”中调用已编译的JavaScript函数“ test.addNumbers(1,2)”,如下所示: 我尝试了很多方法,但是失败了。我阅读了Rhino教程,并检查了许多文章和示例,但它们仅显示了如何从命令行或源文件“ test.js”中调用JavaScrip
我曾经用过 在BSF采样器中。现在我使用带有groovy的JSR223采样器,出现错误 响应消息:javax.script.ScriptException:org.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败: Script2.groovy: 10:无法解析类Packages.ml.bh.security.CUplo
问题内容: 我正在编写一个与.class文件一起使用的Java程序。我希望能够读取文件系统上的.class文件(使用InputStream)并确定它所在的包。该.class文件可能不在一个不错的包目录结构中,它可能位于某个随机位置。我怎样才能做到这一点? 问题答案: 阅读类文件格式文档 -或使用知道如何解析类文件的库,例如BCEL及其类。
我的两门课是这样的: 和 我无法使用编译这两个文件,错误是: a、 java:4:找不到symbol symbol:B类位置:p.a类 B类B=新B(“哈哈”) ^ a.java:4:找不到符号 符号:B类 位置:p.a类 B类=新B(“哈哈”) ^ 2个错误 移除
问题内容: 我在Sun上阅读了有关JAR文件的Java教程,但是仍然找不到解决我问题的方法。我需要使用一个名为jtwitter.jar的jar文件中的类,我下载了该文件并尝试执行该文件(昨天我发现可以通过双击来执行.jar文件),而Vista却给我一个错误提示:无法从[路径] /jtwitter.jar加载Main-Class Manifest属性。 编码.jar文件的人要我将其导入,但是在哪里将
这是我的bash脚本(“compile_java.sh”): 这就是我尝试调用bash脚本(我使用Ubuntu): 这就是“错误”信息: 谁能给我一个提示吗?