LINUX 下编译运行java

1. 编译运行方法

在~/bashrc设置 CLASSPATH的JAVA路径包


方法一、java函数可以直接编写用命令,例子:

javac -d . -cp ./apache-log4j-1.2.16/log4j-1.2.16.jar:./vensim.jar a.java  b.java 
java -cp ./apache-log4j-1.2.16/log4j-1.2.16.jar:./vensim.jar a
方法二、编写shell命令文件

编写shell脚本:http://www.oschina.net/question/2273063_240373

——————————————————————————————————————————————————————

export PATH=$JAVA_HOME/bin:$PATH

echo $JAVA_HOME

export FILE_HOME=/home/hzx/work/Hello

export CLASSPATH=.:$FILE_HOME/src:$FILE_HOME/slf4j.api-1.6.1.jar:$FILE_HOME/slf4j-simple-1.6.1.jar:$FILE_HOME

/libthrift-0.9.3.jar:$CLASSPATH

echo $CLASSPATH

javac $FILE_HOME/src/com/*.java

java -cp $CLASSPATH com.Server

——————————————————————————————————————————————————————

方法三、maven或ant的使用

使用maven或ant:http://www.dewen.io/q/4205


2. 解决 Error: Could not find or load main class XXX

可能问题1:javac与java的-version不相同,http://blog.csdn.net/config_man/article/details/5717177

可能问题2:使用方法二中的shell脚本出现此问题,原因是class的包要带上,如Hello.java中使用了package com.test'

则在上述shell脚本中,CLASSPATH中包含xxx.class所在路径(不包含com/test),然后在 执行的对象前加com.test;

java -cp $CLASSPATH com.test.Hello

你可能感兴趣的:(LINUX 下编译运行java)