linux下的java环境配置

本文详细介绍如何在Red Hat Enterprise Linux 5环境下安装Java SDK,并配置Java环境变量,包括卸载旧版本、安装新版本及环境变量配置的具体步骤。

由于我本人是做java开发,当然做的程式了会在Linux上运行,运行java写的程式首要的一步就是安装java,配置java环境。

下面把本人安装的一些经验分享给大家,也记下来为了自己以后查看,以下运行环境为Redhat Enterprise Linux 5

0. 首先安装之前要确认系统是不是已经存在有jdk,因为Redhat Enterprise Linux5安装的时候,有可能自带安装了jdk,不过自带的好像是jdk 1.4.2版本,
要查看原来系统有没有安装jdk
[root@localhost root]#rpm -qa|grep java
如果有安装就会出现安装的jdk的相关信息

要删除原来的jdk
如果你的linux上安装了yum工具,那么用 yum remove java就可以了。
如果你的linux上没有安装yum工具,那么就只有用如下rpm命令
假如用
[root@localhost root]#rpm -qa|grep java
得到的結果是
glib-java-0..2.6-3.fc6
rpmjava-1.4.2-gcj-compat-1.4.2.0-40jpp.115
那么刪除就可以用如下語句
[root@localhost root]#rpm -e --nodeps glib-java-0..2.6-3.fc6
执行完后,jdk1.4就被卸了。


1. 安装java的第一步当然是到sun的官网上去下载linux版的sdk.
我用的是jdk 1.5版本的。下载地址http://java.sun.com/javase/downloads/5u20/jdk
下载linux版的以 .bin结尾的文件
2. 假设上一步下载的文件为**.bin,假设存放目录是:/npm/**.bin

[root@localhost root]#cd /npm               ----切换到此目录
[root@localhost root]#chmod +x **.bin       ----修改文件的权限让文件可以执行
[root@localhost root]#./**.bin              ----执行此文件,进行安装,如果安装文件是rpm,就用[root@localhost root]#rpm -ivh **.rpm
安装的时候首先会出现jdk的授权信息,你就可以不断的enter就可以了,
然后会跑出来一个 确认你否安装的 信息,然后输入 "yes"就真正开始安装了。
安装完成后的目录是

3. 和windows里的安装一样,需要配置环境变量, 比如JAVA_HOME,CLASSPATH,PATH
这三个变量设定的值和 windows里设定的值是一样,只不过这些配置都要配置到一个文件里,这个文件就是 /etc/profile

配置过程如下:
[root@localhost root]#vi /etc/profile  -------打开profile文件
假设jdk的安装目录为:npm/java/jdk1.5.0
然后在文件的末尾加上以下三句话
export JAVA_HOME=/npm/java/jdk1.5.0
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

然后保存退出,重启一下系统,就可以了

不过这里配置需要注意以下两点:第一是Redhat Enterprise Linux5里环境变旱之前用":"冒号分开,而不是像windows里用“;” 分号分开。第二个是"="等号左右不要留空白。

 

 

现在用linux的朋友越来越多了,前几天就有两个朋友问我linux下怎么配置java环境,我想还有很多朋友想了解学习这方面的东西,就写一个完全一点的linux java环境配置吧,希望对大家有帮助。

一. 下载jdk5.0 for linux

  到sun的主页 http://java.sun.com/j2se/1.5.0/download.jsp 下载jdk安装文件jdk-1_5_0_05-linux-i586.bin

二. 解压安装jdk

   在shell终端下进入jdk-1_5_0_05-linux-i586.bin文件所在目录,执行命令 ./jdk-1_5_0_05-linux-i586.bin 这时会出现一段协议,连继敲回车,当询问是否同意的时候,输入yes,回车。之后会在当前目录下生成一个jdk-1.5.0_05目录,你可以将它复制到 任何一个目录下。

三. 需要配置的环境变量

  1. PATH环境变量。作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好 PATH变量后,就可以在任何目录下执行javac/java等工具了。

  2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们 需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

  3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

四. 三种配置环境变量的方法

  1. 修改/etc/profile文件

    如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。

    ·用文本编辑器打开/etc/profile
    ·在profile文件末尾加入:

      JAVA_HOME=/usr/share/jdk1.5.0_05
      PATH=$JAVA_HOME/bin:$PATH
      CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
      export JAVA_HOME
      export PATH
      export CLASSPATH

    ·重新登录
    ·注解
      a. 你要将 /usr/share/jdk1.5.0_05jdk 改为你的jdk安装目录
      b. linux下用冒号“:”来分隔路径
      c. $PATH / $CLASSPATH / $JAVA_HOME 是用来引用原来的环境变量的值
        在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种
        常见的错误。
      d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。
      e. export是把这三个变量导出为全局变量。
      f. 大小写必须严格区分。

  2. 修改.bashrc文件
    
    这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bashrc文件就可以了。

    ·用文本编辑器打开用户目录下的.bashrc文件
    ·在.bashrc文件末尾加入:
      
      set JAVA_HOME=/usr/share/jdk1.5.0_05
      export JAVA_HOME
      set PATH=$JAVA_HOME/bin:$PATH
               export PATH
               set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
               export CLASSPATH

    ·重新登录

  3. 直接在shell下设置变量

    不赞成使用这种方法,因为换个shell,你的设置就无效了,因此这种方法仅仅是临时使用,以后要使用的时候又要重新设置,比较麻烦。

    只需在shell终端执行下列命令:

    export JAVA_HOME=/usr/share/jdk1.5.0_05
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

五. 测试jdk

  1. 用文本编辑器新建一个Test.java文件,在其中输入以下代码并保存:

    public class test {
      public static void main(String args[]) {
        System.out.println("A new jdk test !");
      }
    }

  2. 编译:在shell终端执行命令 javac Test.java

  3. 运行:在shell终端执行命令 java Test

    当shell下出现“A new jdk test !”字样则jdk运行正常。

六. 卸载jdk

·找到jdk安装目录的_uninst子目录
  ·在shell终端执行命令./uninstall.sh即可卸载jdk。

基于 NSFW Model 色情图片识别鉴黄 后面更新视频检测 项目背景: 随着互联网的快速发展,网络上的信息量呈现出爆炸式的增长。然而,互联网上的内容良莠不齐,其中不乏一些不良信息,如色情、暴力等。这些信息对青少年的健康成长和社会风气产生了不良影响。为了净化网络环境,保护青少年免受不良信息的侵害,我国政府加大了对网络内容的监管力度。在此背景下,本项目应运而生,旨在实现对网络图片和视频的自动识别与过滤,助力构建清朗的网络空间。 项目简介: 本项目基于 NSFW(Not Safe For Work)Model,利用深度学习技术对色情图片进行识别与鉴黄。NSFW Model 是一种基于卷积神经网络(CNN)的图像识别模型,通过学习大量的色情图片和非色情图片,能够准确地判断一张图片是否含有色情内容。本项目在 NSFW Model 的基础上,进一步优化了模型结构,提高了识别的准确率和效率。 项目功能: 色情图片识别:用户上传图片后,系统会自动调用 NSFW Model 对图片进行识别,判断图片是否含有色情内容。如果含有色情内容,系统会给出相应的提示,并阻止图片的传播。 视频检测:针对网络视频,本项目采用帧提取技术,将视频分解为一帧帧图片,然后使用 NSFW Model 对这些图片进行识别。如果检测到含有色情内容的图片,系统会给出相应的提示,并阻止视频的传播。 实时监控:本项目可应用于网络直播、短视频平台等场景,实时监控画面内容,一旦检测到含有色情内容的画面,立即进行屏蔽处理,确保网络环境的纯洁。
### 如何在本地部署 NSFW 模型或服务 要在本地环境中成功部署 NSFW(不适宜工作场合内容)检测模型或服务,以下是详细的说明: #### 准备环境 为了确保能够顺利运行模型和服务,需要安装必要的依赖项。这些工具和库包括但不限于以下几类: - **Python 环境**: 推荐使用 Python 3.7 或更高版本。 - **Transformers 库**: 提供加载预训练模型的功能[^1]。 - **PyTorch/TensorFlow**: 支持深度学习框架的计算需求。 - **Pillow (PIL)**: 处理图像文件并将其转换为适合输入模型的形式。 具体命令如下所示: ```bash pip install transformers torch Pillow ``` #### 加载模型与测试 通过 Hugging Face 的 `transformers` 工具包可以直接访问已有的 NSFW 图片分类模型。例如,可以采用名为 `"Falconsai/nsfw_image_detection"` 的公开模型来完成此任务[^1]。 下面是一个简单的代码片段展示如何加载该模型并对单张图片执行预测操作: ```python from PIL import Image from transformers import pipeline def classify_nsfw(image_path): # 打开指定路径下的图片文件 img = Image.open(image_path) # 初始化 image-classification 流水线对象,并指明使用的特定模型名称 classifier = pipeline("image-classification", model="Falconsai/nsfw_image_detection") # 对传入的图片调用流水线方法得到其类别标签及其置信度分数列表形式的结果 result = classifier(img) return result if __name__ == "__main__": test_img_path = "<your_test_image>" output_results = classify_nsfw(test_img_path) print(output_results) ``` 注意替换 `<your_test_image>` 成实际存在的图片绝对或者相对地址字符串值之前再尝试运行以上脚本。 #### 构建 RESTful API 服务 如果希望进一步扩展功能至 Web 应用程序层面,则可考虑利用 Flask/Django 这样的轻量级 web 开发框架构建起支持 HTTP 请求交互的服务端接口。这里给出基于 FastAPI 实现的一个简单例子作为示范用途: ```python import uvicorn from fastapi import FastAPI, File, UploadFile from PIL import Image from io import BytesIO from typing import List from pydantic import BaseModel app = FastAPI() class Prediction(BaseModel): label: str score: float @app.post("/predict/", response_model=List[Prediction]) async def predict(file: UploadFile = File(...)): try: contents = await file.read() pil_image = Image.open(BytesIO(contents)) clf_pipeline = pipeline('image-classification', model='Falconsai/nsfw_image_detection') predictions = clf_pipeline(pil_image) formatted_preds = [{"label": pred['label'], "score": round(pred['score'], 4)} for pred in predictions] return formatted_preds except Exception as e: raise ValueError(f"Error processing uploaded file {e}") if __name__ == '__main__': uvicorn.run(app, host='0.0.0.0', port=8000) ``` 启动服务器之后即可向 `/predict/` 路径发送 POST 请求附带上传待分析的目标图片获取返回结果了。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值