[英]changes to java program not being reflected
#!/bin/ksh
echo "Some Programme v1.0.0"
JAVA_HOME=/apps/clear/jdk1.7.0_45
PATH=${JAVA_HOME}/bin:${JAVA_HOME}/lib:/usr/local/bin:/bin:/usr/bin:.:
export NEWAPI_DIR=/local/newapi/1.1.1.1.2
LIBRARY_PATH=$NEWAPI_DIR/Linux-2.6/lib
MY_HOME=/home/clear/dev/app/lse
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$LIBRARY_PATH
MY_CLASSPATH=${MY_HOME}/lib/yt500.jar:${JAVA_HOME}/jre/lib/rt.jar:${MY_HOME}/lib/ftlse.jar:$LIBRARY_PATH/JNewApi.jar:$LIBRARY_PATH/Jfib.jar
date
$JAVA_HOME/bin/java -version
$JAVA_HOME/bin/java -classpath $MY_CLASSPATH com.company.ft.lse.LseParser /home/clear/dev/app/lse/config/config.xml
date
The above is my run script. 上面是我的运行脚本。 I have an application
LseParser.java
to which I have changed the code. 我有一个将代码更改为的应用程序
LseParser.java
。 But this code is not reflected when I have run the code (. ./run) in unix box. 但是,当我在Unix框中运行代码(。./run)时,此代码未得到反映。 When I locate the
ftlse.jar
within where the LseParser.class
exists, it is last date modified some long time ago. 当我在
ftlse.jar
所在的LseParser.class
找到LseParser.class
时,它的修改时间是很久以前的。 Can someone please point me what i'm doing wrong or suggest any checks or alterations I should make ? 有人可以指出我做错了什么,还是建议我应做的检查或更改? am i missing any lines in my script i should have ?
我应该在脚本中缺少任何行吗?
Java is a compiled language . Java是一种编译语言 。 You need to run the javac compiler first and then the jar command to create the jar file.
您需要先运行javac编译器,然后运行jar命令来创建jar文件。 You can use the tutorials I linked to to figure out how to run them correctly for your project.
您可以使用我链接的教程来弄清楚如何为您的项目正确运行它们。 Once you have your compile and package commands you can add them to your run script.
获得编译和打包命令后,可以将它们添加到运行脚本中。 However, I strongly recommend you look into a build automation tool such as Maven so that you don't have to work with custom built run scripts.
但是,我强烈建议您使用诸如Maven之类的构建自动化工具,这样就不必使用自定义构建的运行脚本。
我认为您在第3行中错过了JAVA_HOME之前的导出...因此,shell而不是将$ JAVA_HOME当作变量,而是将其解释为命令。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.