报错问题出现原因

第一次使用Ubuntu操作系统,很多命令及软件安装方式与以往使用的Linux操作系统(CentOS)有很大区别。
现在总结使用Ubuntu在安装JDK中,遇到的问题及解决方法。

root@slave1:~/hadoop# rpm -i jdk-7u80-linux-x64.rpm
rpm: RPM should not be used directly install RPM packages, use Alien instead!
rpm: However assuming you know what you are doing...

安装过程问题解决步骤

百度后发现Ubuntu的软件包格式为deb,而rpm格式的包则是CentOS 相关系统所用的软件包。然后再百度一下,在Ubuntu系统中通过一定的方法也是可以很有效的安装RPM格式包的,只需3步。

1、首先安装alien这一软件,系统默认没有安装。
apt-get install alien

2、使用alien将rpm转化为deb文件
alien <包名>.rpm  当前安装的 jdk 是在 Oracle官网下载的包 jdk-7u80-linux-x64.rpm
转换过程会根据rpm包的大小等待一会儿,转换后会生成 ****.deb 文件

3、然后使用dpkg进行安装
dpkg -i jdk_1.7.080-1_amd64.deb

通过以上几个步骤,jdk 已经安装好了。java home 目录在 /usr/java/jdk_version/...

环境变量问题解决步骤

接下来就是配置JAVA的环境变量了。
在CentOS操作系统中,安装好jdk后即使没有配置环境变量直接用 java -version 命令是可以显示所安装的jdk版本的。但是在Ubuntu中配置好环境变量之后还是不可以的(如下图),还需要在进行一些配置。

出现这个错误的原因是没有找到tools.jar及rt.jar;
tools.jar是关于一些工具的类库
rt.jar包含了jdk的基础类库,也就是你在java doc里面看到的所有的类的class文件。

usr/java/jdk_version/bin 下面有个unpack200
usr/java/jdk_version/jre/bin 下面也有个unpack200
好像使用 usr/java/jdk_version/bin 的 unpack200 就可以了。

rt.jar 解决办法:
在 /usr/java/jdk_version/jre/lib 修改 rt.pack  root@master:/usr/java/jdk_version/jre/lib# ../bin/unpack200 rt.pack rt.jar

tools.jar 解决办法:
在 /usr/java/jdk_version/lib 修改 tools.pack  root@master:/usr/java/jdk_version/lib# ../bin/unpack200 tools.pack tools.jar

环境变量配置

有两种常用的配置方式
1)/etc/profile 文件配置(全局/所有用户)
vi /etc/profile
跳到最后一行,追加JAVA_HOME配置
export JAVA_HOME=/usr/java/jdk_version
export PATH=$PATH:$JAVA_HOME/bin
读取修改后的profile配置文件
source /etc/profile 或者 . /etc/profile

2)/etc/environment 文件配置(当前用户)
在PATH变量后面加上, /usr/java/jdk_version/bin . 注意分隔符为冒号(:),而不是分号(;)
读取修改后的profile配置文件
source /etc/profile 或者 . /etc/profile

最后可以使用 java -version 命令,或者 jps 命令验证 jdk 是否安装成功。

Ubuntu安装 jdk.rpm 报错问题解决的更多相关文章

  1. Ubuntu安装Jenkins是报错:The following signatures couldn't be verified because the public key is not available: NO_PUBKEY XXXXXXXXXXX

    我使用Ubuntu16.04安装Jenkins时,按照官网的要求,步骤如下(https://pkg.jenkins.io/debian-stable/): # 添加Key sudo wget -q - ...

  2. ubuntu安装VMware Tools报错enter the path to the kernel header files

    $ sudo apt-get install build-essential linux-headers-$(uname -r) cd /lib/modules/$(uname -r)/build/i ...

  3. 关于ECShop4.0安装时数据库报错问题解决

    是ECShop版本的问题,重点在$db_host不能带端口号,把这个文件 ecshop4\ecshop\install\includes\lib_installer.php 里面3处db_host开头 ...

  4. iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决

    〇.前言 <p>在iOS开发中 CocoaPods作为库依赖管理工具就是一把利器. 有了 CocoaPods则无需再通过拖 第三方库及第三方库所依赖的 framework静态库到项目中等麻 ...

  5. No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? idea maven 打包报错问题解决

    mvn clean install -X -Dmaven.test.skip=true -P dev 打包报错:No compiler is provided in this environment. ...

  6. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  7. 安装SQl Server 报错 "需要 Microsoft.NET Framework 3.5 ServicePack 1" 解决方法

    前言 之前装Sql Server都没遇到过这样的问题, 昨天重装了系统之后, 然后安装SQl Server 报错,提示 "需要 Microsoft.NET Framework 3.5 Ser ...

  8. 遇到的eclipse启动报错问题解决

    遇到的eclipse启动报错问题解决 一.启动时出现Java was started but returned exit code=13 可能原因: 1.eclipse与JDK的不是都64位或者32位 ...

  9. go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量

    go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量 下载安装:go get github.com/astaxie/beego 首页 - beego: 简约 & 强大并存 ...

随机推荐

  1. (三)微信小程序之发送服务通知(模板消息)

    1.后端获取AccessToken返回给微信端 微信小程序端请求后端得到AccessToken   2.后端获取openid返回给微信端   微信小程序端登录请求后端得到openid   3.发送消息 ...

  2. Runtime 运行时之一:消息传递

    什么是Runtime? Runtime顾名思义即为运行时.就是系统运行时候的一些机制,它提供了一些使得对象之间能够传递消息的重要函数,其中最主要的就是消息机制了.相较于C语言而言,C语言使用的是“静态 ...

  3. 在 CSS 中使用特征查询

    原文地址:Using Feature Queries in CSS 原文作者:Jen Simmons 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m… 译者:Che ...

  4. getOwnPropertyNames() & keys()

    1.getOwnPropertyNames方法可以获得对象的所有属性名,并储存于一个数组当中. keys方法只能获取可遍历的属性名并储存于数组. 2.在完成notepad模块模拟的过程中使用了getO ...

  5. 什么是真正的APM?

    近年来APM行业被越来越多的企业所关注,尤其是在2014年末,NewRelic的成功上市,更加激发了人们对这个行业前景的无限遐想.那么究竟什么是APM?APM的目的是什么?要求我们做什么?有不少企业对 ...

  6. Java导出Excel表,POI 实现合并单元格以及列自适应宽度(转载)

    POI是apache提供的一个读写Excel文档的开源组件,在操作excel时常要合并单元格,合并单元格的方法是: sheet.addMergedRegion(new CellRangeAddress ...

  7. 170622、springboot编程之JPA操作数据库

    JPA操作数据库 什么事JAP?JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中. 1.在pom ...

  8. 向Docx4j生成的word文档添加图片和布局--第一部分

    原文标题:Adding images and layout to your Docx4j-generated word documents, part 1 原文链接:http://blog.iprof ...

  9. 7.1 - CRM系统

    一.简介 crm 客户关系管理软件 ( Customer Relationship Management ) ( 详细内容 ) stark组件(仿admin组件)( 详细内容 ) rbac组件(基于角 ...

  10. JSP学习(第一课)

    JSP页面组成: 比如: 打开网页,右键查看源代码: 打开网页: 注意: <%!%>里面定义的属性是成员属性,相当于类的属性,方法相当于是全局的方法,相当于是类里面的方法.但是它是不可以进 ...