Linux下java环境变量设置的完整步骤:从java.sun.com上下载JDK的安装文件,一般是jdk1.5.0_10_XXXX.bin的格式。 解开生成JDK目录,这里假设JDK安装在/usr/java/jdk1.5.0_10中: 代码:sudo chmod 755 jdk1.5.0_10_XXXX.bin sudo ./jdk1.5.0_10_XXXX.bin sudo mkdir /usr/java sudo mv jdk1.5.0_10/ /usr/java代码: sudo gedit /etc/profile在这个文件的末尾追加:代码:export JAVA_HOME=/usr/java/jdk1.5.0_10/ #注意把新添加的JDK的bin目录追加在$PATH的最前面,这样当系统中安装有多个JDK版本时,程序会优先搜寻排在最前面的JDK版本。 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH保存/etc/profile之后,别忘了执行下面这个命令,使环境变量的更改马上起作用。 代码:source /etc/profile如果执行上面这个命令时报错,请仔细检查你在/etc/profile里新增的文本是不是有错。最后检查环境变量更改是否生效: 代码:java -version
② ;编译的时候先到Java文件所在的目录,然后再使用javac命令。 怎么做
看看下面的解释
一、javac命令
javac 用于编译Java文件,格式为:
java [options] [sourcefiles] [@files]
其中:
options:命令行选项;
sourcefiles:一个或多个要编译的源文件;
@files:一个或多个对源文件进行列表的文件,有时候要编译的文件很多,一个个敲命令会显得很长,也不方便修改,可以把要编译的源文件列在文件中,在文件名前加@,这样就可以对多个文件进行编译,对编译一个工程很有用,方便,省事。
有几个比较重要的选项:
-d 用于指定编译成的class文件的存放位置,缺省情况下不指定class文件的存放目录,编译的class文件将和源文件在同一目录下;
-classpath 可以简写成-cp,用于搜索编译所需的class文件,指出编译所用到的class文件的位置,如jar、zip或者其他包含class文件的目录,指定该选项会覆盖CLASSPATH的设定;
-sourcepath用于搜索编译所需的源文件(即java文件),指定要搜索的源文件的位置,如jar、zip或其他包含java文件的目录;
需要注意windows下和linux下文件路径分隔符和文件列表(即-classpath和-sourcepath指定的文件)分隔符的区别:
windows下文件路径分隔符用 \ ,文件列表分隔符用分号 ;
linux下文件路径分隔符用 / ,文件列表分隔符用冒号 :
二、java命令
java 用于执行程序,格式如下:
java [options] classfile
options:命令行选项,一般用于 -classpath 指定要执行的文件所在的位置以及需要用到的类路径,包括jar、zip和class文件目录,会覆盖CLASSPATH的设定
③ 怎么在linux下编译java
设置好jdk和classpath路径以后,用“javac”命令编译,用“java”命令执行class文件。
④ Java代码编译好后的.class文件在哪个文件夹啊
eclipse工具,如果是java项目,class文件在你的java项目的bin下或bin下的包里(bin下的文件夹下);
如果是java
web项目class文件在你的web项目下的WebRoot\WEB-INF\classes
文件下
⑤ linux下java读取文件路径怎么写
linux下文件路径都是“/”开始的,可以通过changeWorkingDirectory方法来进行路径的切换,举例:
**
* 上传文件
*
* @param fileName
* @param plainFilePath 文件路径路径
* @param filepath
* @return
* @throws Exception
*/
public static String fileUploadByFtp(String plainFilePath, String fileName, String filepath) throws Exception {
FileInputStream fis = null;
ByteArrayOutputStream bos = null;
FTPClient ftpClient = new FTPClient();
String bl = "false";
try {
fis = new FileInputStream(plainFilePath);
bos = new ByteArrayOutputStream(fis.available());
byte[] buffer = new byte[1024];
int count = 0;
while ((count = fis.read(buffer)) != -1) {
bos.write(buffer, 0, count);
}
bos.flush();
Log.info("加密上传文件开始");
Log.info("连接远程上传服务器"+CCFCCBUtil.CCFCCBHOSTNAME+":"+22);
ftpClient.connect(CCFCCBUtil.CCFCCBHOSTNAME, 22);
ftpClient.login(CCFCCBUtil.CCFCCBLOGINNAME, CCFCCBUtil.CCFCCBLOGINPASSWORD);
FTPFile[] fs;
fs = ftpClient.listFiles();
for (FTPFile ff : fs) {
if (ff.getName().equals(filepath)) {
bl="true";
ftpClient.changeWorkingDirectory("/"+filepath+"");
}
}
Log.info("检查文件路径是否存在:/"+filepath);
if("false".equals(bl)){
ViewUtil.dataSEErrorPerformedCommon( "查询文件路径不存在:"+"/"+filepath);
return bl;
}
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("GBK");
// 设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.storeFile(fileName, fis);
Log.info("上传文件成功:"+fileName+"。文件保存路径:"+"/"+filepath+"/");
return bl;
} catch (Exception e) {
throw e;
} finally {
if (fis != null) {
try {
fis.close();
} catch (Exception e) {
Log.info(e.getLocalizedMessage(), e);
}
}
if (bos != null) {
try {
bos.close();
} catch (Exception e) {
Log.info(e.getLocalizedMessage(), e);
}
}
}
}
备注:只需要修改上传的服务器地址、用户名、密码即可进行服务器访问上传。根据实际需要修改即可。
⑥ 请教大神Linux下编写shell脚本,利用javac如何编译完整的java工程
#!/bin/sh# Define some constants
ONSSERVER=ONSServer
PROJECT_PATH=/root/iot-oid
JAR_PATH=$PROJECT_PATH/lib
BIN_PATH=$PROJECT_PATH/bin
SRC_PATH=$PROJECT_PATH/src/$ONSSERVER
# First remove the sources.list file if it exists and then create the sources file of the project
rm -f $SRC_PATH/sources
find $SRC_PATH/com -name *.java > $SRC_PATH/sources.list
# First remove the ONSServer directory if it exists and then create the bin directory of ONSServer
rm -rf $BIN_PATH/$ONSSERVER
mkdir $BIN_PATH/$ONSSERVER
# Compile the project
javac -d $BIN_PATH/$ONSSERVER -classpath $JAR_PATH/jdom.jar:$JAR_PATH/oro-2.0.8.jar @$SRC_PATH/sources.list
这个文件你可以保存好,然后 chmod +x ./shell 运行
javac -d YourDir -classpath xx.jar xxxx.java xx.java 这个命令的简单的看就是 YourDir 你的生成文件的位置, -classpath 就是你引入的 jar 的路径, xxx.java 就是源文件
javac 的用法:
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
⑦ 求问。linux 下 java 为什么不用设置classpath就能编译 或者默认jdk在哪echo $JAVA_HOME 是空的
设置$JAVA_HOME的目的是通过这个变量获取编译器 javac 和可执行程序 java所在路径。通常是一些脚本或其他程序需要$JAVA_HOME,java或javac本身可以得到JDK相关的路径信息,不需要$JAVA_HOME。
Linux下,通过 PATH 中的路径搜索所有的可执行程序,如果可以搜索到 javac,那么就能进行编译,本身并不需要$JAVA_HOME。如果通过系统的包管理来安装的JDK,往往在系统路径/usr/bin或/usr/local/bin之类的都会包含javac的软链接。
调用javac时可以通过 -cp 添加自己的jar文件。JDK自身的路径由javac自己处理,并不会受影响。
⑧ linux下编译JAVA源文件
下载个eclipse linux版本,添加源码,很方便、很快捷就弄好了。
命令行编译有些麻烦,先lib中的.jar全添加到CLASSPATH(注意冒号分隔)
所有src里面的.java............
javac -d classes src/a/*.java src/b/*.java
⑨ java在linux下操作文件路径怎么写
一般文件路径在windows中用 \ 表示,但是在其他系统平台下比如linux中就不是 \ 所以java给我们提供了一个与平台无关的表示路径的常量 File.separator在windows中则表示 \ 比如现在有一个文件在D:\java\src\myjava中, 如何用绝对路径访问呢?
现在建立一个目录:
File fDir=new File(File.separator); //File.separator表示根目录,比如现在就表示在D盘下。
String strFile="java"+File.separator+"src"+File.separator+"myjava"; //这个就是绝对路径
File f=new File(fDir,strFile);
⑩ linux怎么查找java安装路径
在linux系统查找jdk的安装路径:
whereis java
which java (java执行路径)
echo $JAVA_HOME
echo $PATH
在windows查找jdk的安装路径:
set java_home:查看JDK安装路径
java -version:查看JDK版本
下面是设置jdk的环境变量和卸载jdk安装:
1.配置linux的环境变量:(记得source .bash_profile)
. 修改/etc/profile文件 (全局所有用户)
vi 此文件/etc/profile
在profile文件末尾加入:
export JAVA_HOME=/usr/share/jdk1.6.0_20
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
.修改.bash_profile文件 (某个用户权限使用这些环境变量)
.bash_profile文件末尾加入:
export JAVA_HOME=/usr/share/jdk1.6.0_20
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
.shell终端执行下列命令: (临时用)
export JAVA_HOME=/usr/share/jdk1.6.0_14
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
2.卸载jdk
·找到jdk安装目录的_uninst子目录
·在shell终端执行命令./uninstall.sh即可卸载jdk