长期支持版本

    开发环境准备

    环境要求

    • 若使用的是物理机,则开发环境所需的最小硬件要求如表1所示。

      表 1 最小硬件要求

      部件名称

      最小硬件要求

      说明

      架构

      • AArch64
      • x86_64
      • LoongArch64
      • 支持Arm的64位架构。
      • 支持Intel的x86_64位架构。
      • 支持LoongArch的64位架构。

      CPU

      • 华为鲲鹏920系列CPU
      • Intel® Xeon®处理器
      • 龙芯3C5000系列CPU

      -

      内存

      不小于4GB(为了获得更好的应用体验,建议不小于8GB)

      -

      硬盘

      为了获得更好的应用体验,建议不小于120GB)

      支持IDE、SATA、SAS等接口的硬盘。

    • 若使用的是虚拟机,则开发环境所需的最小虚拟化空间要求如表2所示。

      表 2 最小虚拟化空间要求

      部件名称

      最小虚拟化空间要求

      说明

      架构

      • AArch64
      • x86_64
      • LoongArch64

      -

      CPU

      2个CPU

      -

      内存

      不小于4GB(为了获得更好的应用体验,建议不小于8GB)

      -

      硬盘

      不小于32GB(为了获得更好的应用体验,建议不小于120GB)

      -

    操作系统要求

    操作系统要求为openEuler操作系统。

    openEuler操作系统具体安装方法请参考安装指南,其中“软件选择”页面的“已选环境的附加选项”中将“开发工具”勾选。

    配置openEuler yum源

    通过直接获取在线的openEuler repo源配置在线yum源或通过挂载ISO创建本地openEuler repo源配置本地yum源。

    通过直接获取在线的openEuler repo源配置在线yum源

    说明:
    openEuler提供了多种repo源供用户在线使用,各repo源含义可参考系统安装。本操作以AArch64架构的OS repo源为例将其配置为yum源。

    1. 进入到yum源目录并查看目录下的.repo配置文件。

      $ cd /etc/yum.repos.d
      $ ls
      openEuler.repo
      
    2. 在root权限下编辑openEuler.repo文件,将在线的openEuler repo源配置为yum源。

      # vi openEuler.repo
      

      编辑openEuler.repo文件的内容如下:

      [osrepo]
      name=osrepo
      baseurl=http://repo.openeuler.org/openEuler-22.03-LTS/OS/aarch64/
      enabled=1
      gpgcheck=1
      gpgkey=http://repo.openeuler.org/openEuler-22.03-LTS/OS/aarch64/RPM-GPG-KEY-openEuler
      

      说明:

      • [repoid]中的repoid为软件仓库(repository)的ID号,所有.repo配置文件中的各repoid不能重复,必须唯一。示例中repoid设置为osrepo
      • name为软件仓库描述的字符串。
      • baseurl为软件仓库的地址。
      • enabled为是否启用该软件源仓库,可选值为1和0。默认值为1,表示启用该软件源仓库。
      • gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck可以确定rpm包的来源是有效和安全的。
      • gpgkey为验证签名用的公钥。

    通过挂载ISO创建本地openEuler repo源配置本地yum源

    说明:
    openEuler提供了多种ISO发布包,各ISO发布包含义可参考系统安装。本操作以openEuler-22.03_LTS-aarch64-dvd.iso发布包和sha256校验文件为例,请根据实际需要的ISO发布包和校验文件进行修改。

    1. 下载ISO发布包。

      • 通过跨平台文件传输工具下载ISO镜像。

        1. 登录openEuler社区网站。

        2. 单击“下载”。

        3. 单击“社区发行版”,显示版本列表。

        4. 在版本列表的“openEuler 22.03 LTS”版本处单击“前往下载”按钮,进入openEuler-22.03-LTS版本下载列表。

        5. 在对应的系统下载列表中,可以查看系统镜像架构和应用场景。

          架构分类如下:

          • AArch64:AArch64架构的ISO。
          • x86_64:x86_64架构的ISO。
          • LoongArch64:LoongArch64架构的ISO。
          • ARM32:嵌入式的Image。

          场景分类如下:

          • 服务器:服务器场景的ISO。
          • 边缘计算:边缘计算场景的ISO。
          • 云计算:云计算场景的ISO。
          • 嵌入式:嵌入式的Image(只有选择AArch64或ARM32架构时,才可选该场景)。
        6. 单击“AArch64”,选择AArch64架构。

        7. 单击“服务器”,选择服务器场景。

        8. 在“软件包类型”栏选择需要的ISO,单击“立即下载”。

        9. 单击该ISO对应的完整性校验文件“SHA256”,复制校验值到本地。

        10. 登录openEuler操作系统,新建用于存放发布包的目录,如“~/iso”。

          $ mkdir ~/iso
          
        11. 使用跨平台文件传输工具(如WinSCP)将本地的openEuler发布包上传到openEuler操作系统。

      • 通过wget命令下载ISO镜像。

        1. 登录openEuler社区网站。

        2. 单击“下载”。

        3. 单击“社区发行版”,显示版本列表。

        4. 在版本列表的“openEuler 22.03 LTS”版本处单击“前往下载”按钮,进入openEuler-22.03-LTS版本下载列表。

        5. 在对应的系统下载列表中,可以查看系统镜像架构和应用场景。

          架构分类如下:

          • AArch64:AArch64架构的ISO。
          • x86_64:x86_64架构的ISO。
          • LoongArch64:LoongArch64架构的ISO。
          • ARM32:嵌入式的Image。

          场景分类如下:

          • 服务器:服务器场景的ISO。
          • 边缘计算:边缘计算场景的ISO。
          • 云计算:云计算场景的ISO。
          • 嵌入式:嵌入式的Image(只有选择AArch64或ARM32架构时,才可选该场景)。
        6. 单击“AArch64”,选择AArch64架构。

        7. 单击“服务器”,选择服务器场景。

        8. 在“软件包类型”栏选择需要的ISO,右键单击“立即下载”,单击“复制链接地址”,将openEuler发布包地址记录好。

        9. 单击复制该ISO对应的完整性校验文件“SHA256”,将openEuler校验文件记录好。

        10. 登录openEuler操作系统,新建用于存放发布包和检验文件的目录,如“~/iso”,并切换到该目录。

          $ mkdir ~/iso
          $ cd ~/iso
          
        11. 使用wget命令远程下载发布包,命令中的 ipaddriso 为openEuler发布包地址。

          $ wget ipaddriso
          
    2. 发布包完整性校验。

      1. 计算openEuler发布包的sha256校验值。

        $ sha256sum openEuler-22.03-LTS-aarch64-dvd.iso
        

        命令执行完成后,输出校验值。

      2. 对比步骤1和复制的校验值是否一致。

        如果校验值一致说明iso文件完整性没有被破坏,如果校验值不一致则可以确认文件完整性已被破坏,需要重新获取。

    3. 挂载ISO并创建为repo源。

      在root权限下使用mount命令挂载镜像文件。

      示例如下:

      # mount /home/iso/openEuler-22.03_LTS-aarch64-dvd.iso /mnt/
      

      挂载好的mnt目录如下:

      .
      │── boot.catalog
      │── docs
      │── EFI
      │── images
      │── Packages
      │── repodata
      │── TRANS.TBL
      └── RPM-GPG-KEY-openEuler
      

      其中,Packages为rpm包所在的目录,repodata为repo源元数据所在的目录,RPM-GPG-KEY-openEuler为openEuler的签名公钥。

    4. 进入到yum源目录并查看目录下的.repo配置文件。

      $ cd /etc/yum.repos.d
      $ ls
      openEuler.repo
      
    5. 在root权限下编辑openEuler.repo文件,将3中创建的repo源配置为本地yum源。

      # vi openEuler.repo
      

      编辑openEuler.repo文件的内容如下:

      [localosrepo]
      name=localosrepo
      baseurl=file:///mnt
      enabled=1
      gpgcheck=1
      gpgkey=file:///mnt/RPM-GPG-KEY-openEuler
      

    安装软件包

    安装开发过程中需要用到的软件。不同的开发需要的软件不一样,但安装方法相同,本章以安装常用的几个软件包(JDK,rpm-build)为例。有些开发软件openEuler操作系统已默认自带,如GCC、GNU make。

    安装JDK软件包

    1. 执行dnf list installed | grep jdk 查询JDK软件是否已安装。

      $ dnf list installed | grep jdk
      

      查看命令打印信息,若打印信息中包含“jdk”,表示该软件已经安装了,则不需要再安装。若无任何打印信息,则表示该软件未安装。

    2. 清除缓存。

      $ dnf clean all
      
    3. 创建缓存。

      $ dnf makecache
      
    4. 查询可安装的JDK软件包。

      $ dnf search jdk | grep jdk
      

      查看命令打印信息,选择安装java-x.x.x-openjdk-devel.aarch64软件包。其中x.x.x为版本号。

    5. 在root权限下安装JDK软件包,以安装java-1.8.0-openjdk-devel软件包为例。

      # dnf install java-1.8.0-openjdk-devel.aarch64
      
    6. 查询JDK软件版本。

      $ java -version
      

      查看打印信息,若打印信息中包括“openjdk version "1.8.0_232"”信息,表示已正确安装,其中1.8.0_232为版本号。

    安装rpm-build软件包

    1. 执行dnf list installed | grep rpm-build 查询rpm-build软件是否已安装。

      $ dnf list installed | grep rpm-build
      

      查看命令打印信息,若打印信息中包含“rpm-build”,表示该软件已经安装了,则不需要再安装。若无任何打印信息,则表示该软件未安装。

    2. 清除缓存。

      $ dnf clean all
      
    3. 创建缓存。

      $ dnf makecache
      
    4. 在root权限下安装rpm-build软件包。

      # dnf install rpm-build
      
    5. 查询rpm-build软件版本。

      $ rpmbuild --version
      

    使用IDE进行Java开发

    对于小型的Java程序,可以直接参考“使用JDK编译”章节得到可运行Java应用。但是对于大中型Java应用,这种方式已经无法满足开发者的需求。因此您可以参考如下步骤安装IDE并进行使用,以方便您在openEuler系统上的Java开发工作。

    简介

    IntelliJ IDEA是一款非常流行的Java IDE,其社区版可以免费下载使用。目前openEuler支持使用IntelliJ IDEA集成开发环境(IDE)进行Java程序的开发,从而可以提升开发人员的工作效率。

    使用MobaXterm登录服务器

    MobaXterm是一款非常优秀的SSH客户端,其自带X Server,可以轻松解决远程GUI显示问题。

    您需要提前下载安装好MobaXterm并打开,然后SSH登录您的服务器并进行以下操作。

    设置JDK环境

    在设置JAVA_HOME之前您需要先找到JDK的安装路径。在“开发环境准备 > 安装软件包 > 安装JDK软件包”章节中您已经学会了如何安装JDK,如果您还没安装JDK,请提前安装好。

    查看java路径,命令如下:

    $ which java
    /usr/bin/java
    

    查看软链接的实际指向目录,命令如下:

    $ ls -la /usr/bin/java
    lrwxrwxrwx. 1 root root  22 Mar 6 20:28 /usr/bin/java -> /etc/alternatives/java
    $ ls -la /etc/alternatives/java
    lrwxrwxrwx. 1 root root  83 Mar 6 20:28 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64/jre/bin/java
    

    发现JDK的真实路径为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64,设置JAVA_HOME和PATH,命令如下:

    $ export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.h2.aarch64
    $ export PATH=$JAVA_HOME/bin:$PATH
    

    下载安装GTK库

    运行如下命令:

    $ dnf list installed | grep gtk
    

    如果显示gtk2或者gtk3,则表示您已安装该库,可以直接跳过进入下一步,否则需要在root权限下运行如下命令自动下载安装gtk库。

    # dnf -y install gtk2 libXtst libXrender  xauth
    

    设置X11 Forwarding

    切换到sshd配置目录

    $ cd ~/.ssh
    

    如果该目录不存在,则创建目录后再进行切换,创建目录命令如下:

    $ mkdir ~/.ssh
    

    然后在.ssh目录下编辑config文件并保存:

    1. 使用vim打开config文件

      $ vim config
      
    2. 将以下内容添加到文件末尾并保存:

      Host *
      		  ForwardAgent yes
      		  ForwardX11 yes
      

    下载并运行IntelliJ IDEA

    在执行如上环境配置后,您就可以下载使用IntelliJ IDEA了。鉴于最新版的IntelliJ IDEA和openEuler系统在部分功能上有兼容性问题,建议您从此链接下载2018版本linux压缩包。下载好后把压缩包移到您想要安装该软件的目录,对压缩包进行解压:

    $ tar xf ideaIC-2018.3.tar.gz
    

    解压后切换到IntelliJ IDEA的目录下并运行。

    $ cd ./idea-IC-183.4284.148
    $ bin/idea.sh &
    

    文档捉虫

    “有虫”文档片段

    问题描述

    提交类型 issue

    有点复杂...

    找人问问吧。

    PR

    小问题,全程线上修改...

    一键搞定!

    问题类型
    规范和低错类

    ● 错别字或拼写错误;标点符号使用错误;

    ● 链接错误、空单元格、格式错误;

    ● 英文中包含中文字符;

    ● 界面和描述不一致,但不影响操作;

    ● 表述不通顺,但不影响理解;

    ● 版本号不匹配:如软件包名称、界面版本号;

    易用性

    ● 关键步骤错误或缺失,无法指导用户完成任务;

    ● 缺少必要的前提条件、注意事项等;

    ● 图形、表格、文字等晦涩难懂;

    ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

    正确性

    ● 技术原理、功能、规格等描述和软件不一致,存在错误;

    ● 原理图、架构图等存在错误;

    ● 命令、命令参数等错误;

    ● 代码片段错误;

    ● 命令无法完成对应功能;

    ● 界面错误,无法指导操作;

    风险提示

    ● 对重要数据或系统存在风险的操作,缺少安全提示;

    内容合规

    ● 违反法律法规,涉及政治、领土主权等敏感词;

    ● 内容侵权;

    您对文档的总体满意度

    非常不满意
    非常满意
    提交
    根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
    文档捉虫
    编组 3备份