当前位置: 首页 > article >正文

【合作原创】使用Termux搭建可以使用的生产力环境(八)

前言

在上一篇【合作原创】使用Termux搭建可以使用的生产力环境(七)-CSDN博客中我们讲到了安装百度网盘、VS Code还有java,这篇我打算讲一下最后的编程,还有输入法相关问题解决。众所周知我的本职工作是Java程序猿,因此只有有了IDEA,并且能够正常使用,那么这个系统作为生产力环境是完全没有问题的🤣😎

安装IDEA Community Edition

下载IDEA社区版

众所周知IDEA算是目前最强的Java编程IDE了,而Java又是跨平台的,写出来的程序能在Linux ARM64这种软件资源匮乏的系统中运行,而且IDEA也是用Java写的,因此不出意外能在我们的Termux的Debian系统中正常运行。而这个社区版是免费的不用激活的,避免了侵权方面的问题。

进入IDEA的下载界面,找到下方的IntelliJ IDEA Community Edition

Download IntelliJ IDEA – The Leading Java and Kotlin IDE

找到这里的ARM64版本,然后点击下载,当前我下载的是社区版2024.3.1.1版本,这篇教程我就拿这个版本进行演示

上传到手机中

当然大家也可以在Debian中使用火狐浏览器下载后直接使用,不采用Windows下载然后上传到Termux中的方式。

老样子,使用Filezilla Client将下载完成的安装包上传到Debian中,作为软件我是建议上传到这个路径下:/data/data/com.termux/files/usr/var/lib/proot-distro/installed-rootfs/debian/opt

使用以下命令解压该压缩包

cd /opt
tar zxvf ideaIC-2024.3.1.1-aarch64.tar.gz

启动IDEA社区版

进入Debian后,进入/opt/idea-IC-243.22562.218/bin/目录,双击idea这个齿轮样子的图标即可启动IDEA

创建快捷方式

很明显这个启动方式实在是太麻烦了,而且很不优雅,这就需要我们在桌面创建一个快捷方式了。在桌面右键,点击“Create Launcher”

其中Name填IDEA,Command填:/opt/idea-IC-243.22562.218/bin/idea

在Icon右边点击“No icon”,再在右边的弹窗中点击“Select icon from”,选择Image Files

选择opt,双击打开IDEA的安装目录

进入其中的bin目录,双击选择idea.svg

然后桌面上就会出现IDEA图标的快捷方式了,双击即可启动IDEA

Hello World

在手机上写Java的第一步自然就是Hello World了,点击New Project

创建一个用Maven构建的项目,由于我们在上一章已经安装的JDK23,因此这里已经识别到了

直接点击绿色箭头即可执行这个自动生成的Hello World方法

输入法不生效

IDEA有个问题,就是中文输入法在IDEA中根本就不生效,什么中文都打不出来,即使怎么启动fcitx都不行

下一结我们就来讲如何解决这个问题

换一种启动方式

不知道大家是否还记得这个系列的第三篇【合作原创】使用Termux搭建可以使用的生产力环境(三)_termux sftp-CSDN博客

其中有一节讲的就是多种排列组合

我们之前讲的就是组合c,这个组合是最基础,也最能让新人接受的,但是这个组合有个非常致命的问题——输入法启动不正常。就像刚才的IDEA,它的输入法面板是无法显示的,更别说打中文字符了。能解决这个问题的组合是组合d,也就是说VNC Server在Termux中安装,xfce在Debian中安装。

回到Termux

让我们先关闭VNC Server,并回到Termux中

vncserver -kill :1
exit

安装x11-repo

首先安装x11-repo,如果不安装这个软件包仓库,VNC Server这个软件包是无法找到的。它提供了与X11相关的软件包。

pkg i -y x11-repo

安装tigervnc

如果没有安装x11-repo就去执行下面的命令,是无法找到tigervnc这个软件包的

pkg i -y tigervnc

安装 xorg-xhost

直接上AI解答,自己看吧

反正不安装这个xorg-xhost,即使是启动的VNC服务器,在Windows端使用RealVNC也无法连接上

pkg i -y xorg-xhost

在Termux中启动VNC服务器

注意下,这次我在Termux中启动VNC Server了,而不是在Debian中,启动命令如下:

export DISPLAY=:2
vncserver -kill :2
vncserver :2 -localhost no
xhost +

其中第一行命令:export DISPLAY=:2,用于指定显示序号,也就是5902端口。为了防止和之前的1号显示冲突,这里我选择2号。

第二行命令:vncserver -kill :2,用于关闭之前可能没有关闭的显示,冒号后面的就是显示序号,为了防止不测

第三行命令:vncserver :2 -localhost no,用于启动VNC服务器,并指定显示序号为2,且关闭仅对本地开放 ,也就是局域网中的客户端都能访问。

第四行命令:xhost +,用于禁用X身份验证,允许任何用户连接到X服务器

当然和之前一样,第一次启动VNC服务器会让你设置登录密码,按照你自己的想法设置密码即可。

如果是第一次启动VNC服务器,xhost +,这行命令需要额外执行一下

启动Debian和xfce

这次启动采用一气呵成的方式启动Debian和xfce桌面,命令如下:

proot-distro login debian --shared-tmp -- /bin/bash -c 'export GTK_IM_MODULE=fcitx && export QT_IM_MODULE=fcitx && export XMODIFIERS=@im=fcitx && export PULSE_SERVER=127.0.0.1 && export XDG_RUNTIME_DIR=${TMPDIR} && export DISPLAY=:2 && startxfce4'

 

执行后会看见xfce4打印的日志,有ERROR也不用管,用RealVNC Client连接就行了,如果能连上说明就没有问题,注意这里的端口是5902了,而不是之前的5901!

还是一样进入桌面

再次运行IDEA

启动fcitx

首先需要在桌面右键Terminal,输入fcitx,运行输入法

启动IDEA Community Edition

在桌面双击IDEA的快捷方式,并打开我们之前创建的项目,输入的时候可以输入中文了。恕我直言,我也不知道为什么会这样,但是确实就是这样了,如果在Debian中运行xfce4和VNC Server输入法就有问题,而使用Debian运行xfce4在Termux运行VNC Server就没这个问题,如果有大佬知道原因可以告诉我一下,本人感激不尽!!

结语

本篇带大家完成了IDEA社区版的安装,以及在Termux中安装VNC Server并在Debian中启动xfce4,并让Debian中的xfce4连接到Termux的VNC Server,并成功让客户端连接,从而解决了在IDEA社区版中无法使用中文输入法的问题,离最终生产力环境更进一步了。

最后和之前一样,有问题大家可以在评论区指出,另外想要和作者吹水可以来群170618278,另外给up:qwe5283的Termux视频多多三连,谢谢各位!


http://www.kler.cn/a/453631.html

相关文章:

  • 蓝牙BLE开发——解决iOS设备获取MAC方式
  • 数据质量检测
  • 散斑/横向剪切/迈克尔逊/干涉条纹仿真技术分析
  • 编程语言的软件工程
  • UDP传输层通信协议详解
  • 勤云远程稿件处理系统 SQL注入漏洞复现(XVE-2024-18393)
  • docker-compose的安装,使用教程及使用yaml搭建个人博客
  • 大模型(LLM)提示工程(Prompt Engineering)初识
  • Mac电脑移动端抓包
  • 图解设计模式
  • 【Rust自学】5.3. struct的方法(Method)
  • Type-C单口便携显示器LDR6021
  • 金属衬底介质片对平面波的反射-问题的解析求解和FEM求解
  • 自然语言处理基础
  • Git的.gitignore文件详解与常见用法
  • 新世纪的语言智能:GPT-5技术革新与市场前景展望
  • Vue2:v-for创建echart图表时不能使用动态ref,要使用动态id
  • python EEGPT报错:Cannot cast ufunc ‘clip‘ output from dtype(‘float64‘)
  • Go语言的defer原理
  • 【c语言】字符串与字符数组
  • spring cloud gateway 3
  • Elasticsearch-索引的批量操作
  • CentOS上安装和卸载Docker
  • UE5.3接入电脑USB摄像头实时预览画面
  • sentinel学习笔记7-熔断降级
  • 基于 Python 考研历年国家分数线大数据分析设计与实现