Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 设置类路径并顺序调用jar_Java_Bash_Shell_Classpath - Fatal编程技术网

Java 设置类路径并顺序调用jar

Java 设置类路径并顺序调用jar,java,bash,shell,classpath,Java,Bash,Shell,Classpath,我正在尝试编写一个bash脚本,以自动执行我的文件,供我的类中的分级器使用 cd ReflectionJar export CLASSPATH=.:$CLASSPATH:/MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar java -jar ReflectionJar.jar Notepad ./MicahRamirez/ReflectionJar/otherclasses/Notepad java -jar Reflectio

我正在尝试编写一个bash脚本,以自动执行我的文件,供我的类中的分级器使用

cd ReflectionJar
export CLASSPATH=.:$CLASSPATH:/MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar
java -jar ReflectionJar.jar Notepad ./MicahRamirez/ReflectionJar/otherclasses/Notepad
java -jar ReflectionJar.jar graff ./MicahRamirez/ReflectionJar/otherclasses/graff
java -jar ReflectionJar.jar quark ./MicahRamirez/ReflectionJar/otherclasses/quark
java -jar ReflectionJar.jar yparser         ./MicahRamirez/ReflectionJar/otherclasses/yparser
java -jar ReflectionJar.jar reflectionPackage ./ReflectionJar/MicahRamirez/otherclasses/reflectionPackage
直接结构:

我目前收到

./reflection.sh: line 4: export: `=': not a valid identifier
./reflection.sh: line 4: export: `./MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar': not a valid identifier
Error: Unable to access jarfile ReflectionJar.jar
...
我真正的障碍是前两个错误。我已经看了很多SO帖子,看看我将如何导出类路径,我发现似乎不起作用

我试过了

 export CLASSPATH=$CLASSPATH:./MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar
 export CLASSPATH=./MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar

两者都不起作用。

当您指定
-jar
选项时,类路径取自清单文件,环境变量和/或
-cp
命令行参数被忽略。见:

-jar

执行封装在JAR文件中的程序。第一个参数是JAR文件的名称,而不是启动类名。要使此选项起作用,JAR文件的清单必须包含一行,格式为
Main Class
:classname。在这里,classname使用
publicstaticvoidmain(String[]args)
方法标识类,该方法作为应用程序的起点

使用此选项时,JAR文件是所有用户类的源,其他用户类路径设置将被忽略


尝试导出类路径=$CLASSPATH:/MicahRamirez/out/artifacts/ReflectionJar/ReflectionJar.jar:。哦,这太大了。。。我相信IDE为我配置了清单,所以我认为jar中应该存在正确的设置。我会再检查一遍,然后回复!