`
美丽的小岛
  • 浏览: 310729 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

java&linux

阅读更多

    为了做一个大象(hadoop)的实验,构造一个实验环境( windows  xp + VMWare7 + linux + jdk + eclipse + tomcat  ),零风险的情况下去做实验。选择了VMWare这个虚拟的东西,用的版本为7.0。在虚拟机上,刚开始的时候想用Ubuntu来构建的, 弄了两天,那个VMWare Tools总有问题,那些权限问题,当成功装上了这个Tools时,出现网络连接不上,加上设置文件共享也没有成功。后来,放弃之。用了Red Hat9,这个跟我亲和多了,很顺利就完成了,还配置了一个文件的共享(E:/redhatfile),网络还好用,呵呵。下面是一个在linux上安装JDK.有三个步骤:

 

1.         寻找JDK

下载网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

找一个合linux条件的下载。下载到E:/redhatfile的目录下(方便与linux共享)。下载文件的名为:jdk-6u31-linux-i586.bin

 

2.         安装JDK

    开启Red Hat,输入root与密码进入。usr目录中创建一个文件夹java.jdk-6u31-linux-i586.bin复制到/usr/java的目录下。具体做法,可以用命令,也可以在界面上像Windows那样去操作。我用了命令符:

       cd  /mnt/hgfs/redhatfile

      cp  jdk-6u31-linux-i586.bin /usr/java

      这样就把jdk-6u31-linux-i586.bin放到了/usr/java文件夹下。

   安装也简单:

     cd  /usr/java

     ./ jdk-6u31-linux-i586.bin

   就行了,当这个命令执行完了,在java文件夹就会多一个jdk1.6.0_31文件。

 

3.         配置JDK

这个就是修改一个文件profile,这个文件在/etc目标下。

vi /etc/profile

profile文件后面加入:

export JAVA_HOME=/usr/java/ jdk1.6.0_31

export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin(不要漏了“$PATH:)

export CLASSPATH=.:$JAVA_HOME/lib/tools.jar(不要漏了“.:”)

退出到命令行,进行对frofile进运行一下:

source /etc/profile

检查一下是否都配置上了,用echo:

echo $PATH

或用javac一下,会内容的,不成功自然会报错。

总结,漏了“$PATH:”试了一次,使系统重启后什么进不了。

漏了“.:”,这个使java文件找不到class在哪里。”.”代表当前目录。

 

4.         测试JDK

写一个HelloWorld,因为依赖了ECLIPSE,所以测试时会遇到以下的问题:

文件:HellWorld.java

public class HelloWorld{

         public static void main(String[] arg){

                   System.out.println(“hello world!”);

}

}

命令如下(错误的):

javac  HelloWorld.java

java  HelloWorld.class

结果:

Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld/class

Caused by: java.lang.ClassNotFoundException: HelloWorld.class

        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

Could not find the main class: HelloWorld.class.  Program will exit.

插入一个老外的内容吧,是看这个东西才醒过来,后来解决了。

Most people always have the following problem when run their java programs under linux box:
Exception in thread "main" java.lang.NoClassDefFoundError: *.java
Even though these programs  really have no problem at all.
Here are some solutions for you:
1) Check your syntax that you are trying to run the java class and make sure it should be like this (assume the class file is foo.class):
java  foo      instead of    java  foo.class

2) Make sure your classpath contain the special path ".", actually this is most likely where the problem come from. 
You can try to run your program as follows.

java -cp .  foo   or
java  -classpath  .  foo

If it works, then you are suppose to add "." to you classpath.
For example:
export CLASSPATH=.:$JAVA_HOME/lib:JAVA_HOME/jre/lib

3) Check it out if you compiled the java file without specifying the package that import in your file.

What if all these works are done, but your still got the same problem?
Well, in this case, you've got to have a look at your souce code......

Good luck!
我犯了第一种情况,因为加上了.class 有点大意,从另外一个侧面来说明很少这样去运行一个java文件,有点依赖开发工具了(eclipse),修改过来可以了。

 

5.         延伸一下

对于一个带有包的java文件,怎样去运行?

    package test ;

    public class HelloWorld{

         public static void main(String[] arg){

                   System.out.println(“hello world!”);

}

}

   正确的编译与执行:

     javac –d classes HelloWorld.java

    cd  classes

    java  test. HelloWorld;

  其它的方法都会出现上面的错误情况。

  关于javac总结,这个网址总结的很好:   http://hubingforever.blog.163.com/blog/static/171040579201151722719321/

1
0
分享到:
评论

相关推荐

    java工程linux部署图片教程

    我觉得在Linux下安装JDK和在Windows下并没有什么区别...在Linux下则需要敲入挺多的字符才行,但也是不是很难的,只要在使用中注意一些小的细节,不犯粗心大意的错误,很容易就可以在Linux下编写,编译和执行Java程序了

    Java8 Linux版本

    Java 8是Oracle公司推出的Java开发工具包(Java Development Kit)的一个重要版本,尤其对于Linux操作系统用户来说,它提供了一套完整的开发和运行Java应用程序的环境。Linux版本的Java 8针对Linux平台进行了优化,...

    java获取linux服务器上的IP操作

    Java获取Linux服务器上的IP操作 Java获取Linux服务器上的IP操作是Java开发中的一项重要任务。然而,在Linux服务器上获取IP地址却存在一些问题。在本文中,我们将详细介绍Java获取Linux服务器上的IP操作,包括Linux...

    最新全套Jar: FFMPEG3.4.1+JavaCV1.4.1+OpenCV3.4.1-含windows&linux;平台链接库

    最新全套Jar: FFMPEG3.4.1+JavaCV1.4.1+OpenCV3.4.1-含windows&linux;平台链接库。安卓和macos的链接库将另发。 请根据平台选择适当的链接库。 artoolkitplus-linux-armhf.jar artoolkitplus-linux-ppc64le.jar ...

    linux安装 java 8版

    在Linux系统中安装Java 8版本是一个常见的任务,对于开发者来说尤其重要,因为Java是许多后端服务和应用程序的基础。本篇文章将详细讲解如何在Linux环境下安装Java Development Kit(JDK)8,以满足开发和运行Java...

    java&tomcat for linux安装配置

    在Linux环境中,安装和配置Java及Tomcat是搭建服务器应用的基础步骤。以下是对这个过程的详细解释: 首先,我们需要安装Java。在这个例子中,我们使用的是Java Enterprise Edition (Java EE) SDK 5.04。这一步骤...

    linux环境 java 1.8安装包

    在Linux环境中安装Java 1.8是开发和运维工作中的常见任务,对于使用Java作为主要开发语言的项目尤其重要。本文将详细介绍如何在Linux系统上安装Java 1.8,以及涉及的相关知识点。 首先,Java Development Kit (JDK)...

    Java设置linux系统时间

    利用Java代码设置Linux系统时间。设置时间精确到毫秒级别。

    linux下java安装包

    在Linux系统中安装Java开发工具包(Java Development Kit,简称JDK)是许多开发者和系统管理员的必备工作。本文将详细介绍如何在Linux环境下安装Java 8版本,具体以标题和描述中的"linux下java安装包"和标签"java8...

    一键安装java脚本 Linux 安装jdk

    一键安装java脚本 Linux 安装jdk

    基于java的linux命令展示

    基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux命令展示基于java的linux...

    银联接口demo-JAVA语言-Windows&Linux-32&64位

    在这个“银联接口demo-JAVA语言-Windows&Linux-32&64位”中,我们主要关注的是如何在Java环境下,无论是在Windows还是Linux操作系统,无论是32位还是64位系统上,实现银联接口的集成和应用。 首先,`netpayclient....

    用java取得linux系统cpu、内存的实时信息

    在IT领域,特别是对于系统监控和资源管理而言,掌握如何使用Java获取Linux系统的CPU和内存实时信息是一项重要的技能。这不仅有助于系统管理员实时监控服务器的健康状况,还为开发人员提供了优化应用程序性能的关键...

    java jdk 1.6 Linux版本

    java jdk 1.6 Linux版本

    java调用linux命令、脚本工具类.zip

    Java程序调用linux命令、脚本,支持程序在服务器上使用linux命令。工具类为:ProcessUtil,支持单个命令和批量命令执行函数,同时在工具类中添加了getFileLineNumByCmd函数支持通过linux命令获取文件行数的样例。

    JAVA实现Linux中word转换pdf

    在Java编程环境中,我们可以利用各种库来实现在Linux系统中将Word文档转换为PDF。这个过程通常涉及到对文件格式的理解,以及对操作系统调用的掌握。以下是一个详细的知识点介绍: 1. **Java与Linux交互**: Java...

    linux下JDK7.0&&linuxJDK8.0

    在Linux操作系统中,Java Development Kit (JDK) 是开发者必备的工具,用于编写、编译、测试和运行Java应用程序。本篇文章将详细讲解如何在Linux环境下安装JDK 7.0和JDK 8.0,这两个版本是Java开发的重要里程碑。 ...

    大华JAVA SDK LINUX64版本

    大华JAVA SDK LINUX版本,用官网的linux库放到java版本中,会有字段错位的情况的,出现获取车牌号乱码,window上是正常的,发到linux上就会获取不到对应的字段。General_NetSDKDemo_Chn_Java_Linux64_IS_V1.00.40585....

    Java项目04-天天生鲜订菜管理系统云数据库&SpringTemplate;实现&Linux;演示.rar

    Java项目04-天天生鲜订菜管理系统阿里云mysql...实现并提供利用Xshell在Linux环境下答辩展示视频,这里提供源码和数据库sql备份文件及展示视频下载,另外后续还有java swing实现项目及html-js/jsp/css实现项目上线。

    java修改linux密码资料

    Java作为一种强大的编程语言,虽然它不是直接用来管理操作系统任务的,但通过Java的Runtime类或者ProcessBuilder类,我们可以编写程序来执行shell命令,包括修改Linux密码。下面将详细介绍如何使用Java来实现这一...

Global site tag (gtag.js) - Google Analytics