Linux环境下运行简单java程序
一、安装java
1、下载jdk8
登录网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
选择对应jdk版本下载。(Tips:可在Windows下载完成后,通过FTP或者SSH到发送到Linux上)
2、 登录Linux,切换到root用户
su root 获取root用户权限,当前工作目录不变(需要root密码)
或者
sudo -i 不需要root密码直接切换成root(需要当前用户密码)
3、在usr目录下建立java安装目录
cd /usr
mkdir java
4、将jdk-8u60-linux-x64.tar.gz拷贝到java目录下
cp /mnt/hgfs/linux/jdk-8u60-linux-x64.tar.gz /usr/java/
5、解压jdk到当前目录,得到文件夹 jdk1.8.0_* (注意:下载不同版本的JDK目录名不同!)
tar -zxvf jdk-8u60-linux-x64.tar.gz
6、安装完毕为他建立一个链接以节省目录长度
ln -s /usr/java/jdk1.8.0_60/ /usr/jdk
7、编辑配置文件,配置环境变量
vim /etc/profile
在文本的末尾添加如下内容:
JAVA_HOME=/usr/jdk
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
8、重启机器或执行命令 :source /etc/profile
sudo shutdown -r now
9、查看安装情况
java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) Client VM (build 25.60-b23, mixed mode)
ps:可能出现的错误信息:
bash: ./java: cannot execute binary file
出现这个错误的原因可能是在32位的操作系统上安装了64位的jdk,
1、查看jdk版本和Linux版本位数是否一致。
2、查看你安装的Ubuntu是32位还是64位系统:
二、查看java安装路径
首先要申明一下which java是定位不到安装路径的。which java定位到的是java程序的执行路径。网上的资料都是人云亦云,完全不去思考。那么怎么定位到java的安装路径呢。
1、确认安装成功
其实如果没有建立软连接,这样倒是可以直接搜到安装路径。

通过上面指令搜索到java的版本,可以确定安装成功。
2、搜索路径

然后运用which java 搜索路径,最后查看是否有软连接。
最后找到java安装路径。
三、创建程序并测试
1、建立测目录
mkdir -p java_program/hello
2.写一段简单的java程序
进入java_program/hello目录,使用vi建立一个.java文件(vi在文件名存在的时候可以修改文件,在文件名不存在的时候可以创建文件):
写一段很简单的代码,就是打印出"Hello"这几个字符而已:
注意箭头所指,编辑文本完毕必须wq保存,此文件才会被创建。
3、编译Hello.java
使用javac Hello.java来编译我们写好的java代码,如果写得有问题,下面会有编译错误的提示信息出来的;如果写得没有问题,那么就编译成功,编译成功之后的目录为:
看到存在Hello.class和Hello.java两个文件。
4、执行Hello.class
既然Hello.class都已经编译成功了,那么最后自然就是执行这个文件了,使用java Hello就可以了:
打印出字符串"Hello",成功
四、找不到或无法加载主类
这个问题困扰我很久,问题关键是CLASSPATH设置问题,一般在设置CLASSPATH时,一般是

如果所示,在CALSSPATH中没有添加.: 这个设置,则无法在其他路径下运行 java Hello了。此时只能到java/bin/lib运行了,就是设置的lib路径。
找不到或无法加载主类就是无法找到classpath路径了。拷到lib下即找到了。
Linux环境下运行简单java程序的更多相关文章
- linux 环境下运行STS时 出现must be available in order to run STS
linux 环境下运行ECLIPSE时 出现 “ A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avai ...
- 在桌面Linux环境下开发图形界面程序的方案对比
在Linux下开发GUI程序的方法有很多,比如Gnome桌面使用GTK+作为默认的图形界面库,KDE桌面使用Qt作为默认的图形界面库,wxWidgets则是另一个使用广泛的图形库,此外使用Java中的 ...
- phoenixframe自己主动化平台在Linux环境下运行用例的说明
phoenixframe自己主动化平台支持在Linux环境下使用phantomjs,Firefox.chrome运行測试用例.但有下面几个问题须要注意: 1.若无法启动phantomjs,Firefo ...
- linux环境下运行程序格式错误的问题,bash: ./helloworld: cannot execute binary file: Exec format error
在编译完quecOpen的example helloworld之后,我运行此程序,结果报错,详情如下: ricks@ubuntu:~/share/project/ql-ol-sdk/ql-ol-ext ...
- eclipse 运行简单JAVA程序事例
开发JAVA已经有一段时间了,不过要运行JAVA程序,还是在命令行敲命令,很不方便,很麻烦,突然想到eclipse应该也有这个功能,于是百度了一下,将步骤晒出来,供大家参考. 1.创建JAVA工程 单 ...
- linux环境下vim创建java文件,并编译运行
一.前提 安装Java 二.创建工作目录并编辑java文件 三.编译 四.运行
- 用jdk在cmd下运行编译java程序
1.首先通过创建一个txt文档,将java代码写入txt文档中保存 2.将保存好的HelloWorld.txt文档重命名为HelloWorld.java文件. 3.打开windows中的"命 ...
- 在 Linux 环境下报错 java.lang.reflect.InvocationTargetException
今天开发了一个 excel 导出数据的功能,放到 linux 服务器上后发现报错. 捕获到 java.lang.reflect.InvocationTargetException 异常,这个异常不太常 ...
- 在linux环境下搭建JDK+JAVA+Mysql,并完成jforum的安装
参考链接: YUM安装MySQL和JDK和Tomcat:http://cmdschool.blog.51cto.com/2420395/1696206/ http://www.cnblogs.com/ ...
随机推荐
- python 使用进程池Pool进行并发编程
进程池Pool 当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果是上百甚至上千个目标,手动的去创建进程的工作量巨大,此时就可以用到mu ...
- 五花八门的CSS
一.颜色 rgba(0, 0, 0, 0.5) rgba括号中前3个数字代表着 red green blue三种颜色的rgb值,0-255,最后一个是设定这个颜色的透明度即alpha值.范围从0到1, ...
- InnoDB体系架构(四)Master Thread工作方式
Master Thread工作方式 在前面的文章:InnoDB体系架构——后台线程 说到:InnoDB存储引擎的主要工作都是在一个单独的后台线程Master Thread中完成.这篇具体介绍该线程的具 ...
- 在Markdown中写注释
概述 下面是我整理的在Markdown中写注释的几种方法,供自己开发时参考,相信对其他人也有用. html标签 既然Markdown内嵌html语法,那么就可以用可以用隐藏的html标签. 注意:需要 ...
- vscode 开发 Java web 急速教程
1.确认在本机已安装 JAVA SDK 2.确认在本机已安装 maven 3.确认在本机已安装 tomcat 下面是我本机相关软件版本: java version "1.8.0_191&qu ...
- [CocoaPods]入门
什么是CocoaPods? CocoaPods管理Xcode项目的库依赖项. 项目的依赖项在名为Podfile的单个文本文件中指定.CocoaPods将解析库之间的依赖关系,获取生成的源代码,然后在X ...
- LeetCode--No.016 3Sum Closest
16. 3Sum Closest Total Accepted: 86565 Total Submissions: 291260 Difficulty: Medium Given an array S ...
- mint-ui Infinite scroll 重复加载、加载无效的原因及解决方案
1.无限滚动的运用场景: 一般运用在列表展示,有分页.下拉加载更多的需求中. 2.代码分析 代码很简单,实现了列表分页,数据加载完之后显示数据状态 <template> <div c ...
- jquery的contains方法
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- IT人如何打造个性化的个人网站(在线简历)
前言 众所周知,IT行业人员在求职时,如果拥有自己的技术博客和个人网站多少是可以加些分的,因为这也是IT人的技术证明之一.内容丰富的技术博客就不必多少了,往往技术博客大神市场上多是供不应求的,而且技术 ...