如何将java库包含到shell脚本中
我有一个java类,如下所示:如何将java库包含到shell脚本中,java,bash,shell,cygwin,Java,Bash,Shell,Cygwin,我有一个java类,如下所示: package test.shell.com; public class RunTest { public static void main(String[] args) { System.out.print("Hello"); } } #!/bin/sh java test.shell.com.RunTest 从shell脚本中,我的代码如下: package test.shell.com; public class RunTest {
package test.shell.com;
public class RunTest {
public static void main(String[] args) {
System.out.print("Hello");
}
}
#!/bin/sh
java test.shell.com.RunTest
从shell脚本中,我的代码如下:
package test.shell.com;
public class RunTest {
public static void main(String[] args) {
System.out.print("Hello");
}
}
#!/bin/sh
java test.shell.com.RunTest
当我通过cygwin运行shell文件时。它返回的结果如下所示:
package test.shell.com;
public class RunTest {
public static void main(String[] args) {
System.out.print("Hello");
}
}
#!/bin/sh
java test.shell.com.RunTest
因此,当我在java程序中使用java库时:
package test.shell.com;
import org.json.simple.JSONObject;
public class RunTest {
public static void main(String[] args) {
JSONObject test = new JSONObject();
test.put("name","Test");
System.out.print("Hello" + test.get("name"));
}
}
然后再次运行shell脚本,它显示错误消息如下:
package test.shell.com;
public class RunTest {
public static void main(String[] args) {
System.out.print("Hello");
}
}
#!/bin/sh
java test.shell.com.RunTest
我知道shell脚本不知道JSON库,但我不知道如何将它包含到shell脚本中。请帮助…您需要将JAR的路径添加到参数中,并使用“java-classpath”命令运行它 例如:CLASSPATH=yourownjar.jar:xxx.jar:/xx/xx/xxx1.jar:“$CLASSPATH”(yourownjar和jdk类路径配置也应包含在此参数中) 然后使用java-classpath运行:
java-classpath${classpath}xx.Main您需要用所有导入的库创建一个jar。不是shell脚本不了解库,而是程序本身。要么您的系统上不存在,要么您需要指定正确的classpath@YevhenDanchenko你能详细描述一下用所有导入的库制作一个jar吗?仍然不工作,当我添加类路径时,它显示了这个错误**错误:找不到main class test.shell.com.RunTest或者无法加载**@HocN year,我忘了,您自己的jar也应该包含在类路径中。@maxlowbox我添加了我的jar文件,如:
classpath=/test/shell/com/test.jar:/test/shell/com/json-simple-1.1.jar java-classpath${classpath}test.shell.com.RunTest
,但它仍然显示旧错误。@HocN classpath=/test/shell/com/test.jar:/test/shell/com/json simple-1.1.jar:“$CLASSPATH”,机器环境中的源类路径也应该是included@MaxllowFox我添加了所有类似CLASSPATH=/test/shell/com/test.jar:/test/shell/com/json simp的东西le-1.1.jar:“$CLASS”但是它仍然显示错误:((