前言
在上一篇【合作原创】使用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

使用以下命令解压该压缩包
bash
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中
bash
vncserver -kill :1
exit

安装x11-repo
首先安装x11-repo,如果不安装这个软件包仓库,VNC Server这个软件包是无法找到的。它提供了与X11相关的软件包。
bash
pkg i -y x11-repo
安装tigervnc
如果没有安装x11-repo就去执行下面的命令,是无法找到tigervnc这个软件包的
bash
pkg i -y tigervnc
安装 xorg-xhost
直接上AI解答,自己看吧

反正不安装这个xorg-xhost,即使是启动的VNC服务器,在Windows端使用RealVNC也无法连接上
bash
pkg i -y xorg-xhost
在Termux中启动VNC服务器
注意下,这次我在Termux中启动VNC Server了,而不是在Debian中,启动命令如下:
bash
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桌面,命令如下:
bash
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视频多多三连,谢谢各位!