intellij

简介:

感谢

首先说明,服务器文件不是我写的,我也是从lanyu大神那里搬过来的。我这里只是详细介绍一下如何使用。
lanyu大神博客:http://blog.lanyus.com/archives/174.html

下载服务器文件

下载地址:https://github.com/a252937166/new-idea-server.git

本地授权

  • 找到对应系统的文件,以1017端口运行。
    比如如果你是windows系统,打开cmd.exe,进入服务器文件目录,运行IntelliJIDEALicenseServer_windows_amd64.exe -p 1017,在最新版本的jetbrains系列产品中,直接使用http://127.0.0.1:xxxx是不行的,127.0.0.1已经被jetbrains封杀了,所以我们要把它映射为其他地址。

    这里写图片描述

    图(1)

  • 运行natapp.exe

    这里写图片描述

    图(2)

    图(2)红色框中地址就是你1017端口对应的外网地址,这个地址不会被封。

  • 在授权窗口填入对应地址。

    这里写图片描述

    图(3)

    点击Activte,激活成功。

  • natapp我这里就只提供了windows的客户端,因为我觉得玩linux,肯定都会nginx,随便转发到一个域名就行了,也用不到这个工具了。我的natapp是默认映射的1017,在其他平台一定要用这个工具,或者windows下想要以其他端口启动的同学,建议大家去natapp官网注册一个账号,申请一个免费渠道,然后得到authtoken,替换一下config.ini里的内容就行了,很简单,这里就不详细说明了。

    建议大家最好还是自己申请一个authtoken吧,因为有时我可能会因为项目,用这个工具映射其他端口。

  • 关于没有网络的解决办法:以80端口启动,然后修改系统的hosts文件,映射一个域名对应127.0.0.1就行了。比如windows下,进入C:\Windows\System32\drivers\etc,修改hosts,添加一句127.0.0.1 mymymy.com,保存,然后在激活页面,填入http://mymymy.com就行了。

远程服务器授权

本地启动最麻烦的就是每次开机都要先启动服务器,才能打开IDEA,如果自己有服务器的同学,我建议可以把IDEA授权服务挂在到服务器上,这样只要你的远程服务器不挂掉,就可以永久授权了。
关于windows我就不多讲了,我这里讲一下linux系统如何配置。

关于内存消耗

几乎不消耗内存的,我服务器2G内存,我查了一下,显示只占用0.2%。

这里写图片描述

图(4)

启动和停止脚本

启动脚本

start.sh:

#!/bin/sh
rm -f tpid

nohup ../IntelliJIDEALicenseServer_linux_amd64 > info.log 2>&1 &

echo $! > tpid

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这里 ../IntelliJIDEALicenseServer_linux_amd64我使用的是相对路径,这取决于start.sh相对于执行文件的路径,因为我把start.sh放在bin目录里面,binIntelliJIDEALicenseServer_linux_amd64同级。如果想把bin放到其他位置,那么只需要把../IntelliJIDEALicenseServer_linux_amd64改为IntelliJIDEALicenseServer_linux_amd64的绝对路径就行了,nohup是后台运行的意思,千万不能去掉,不然只要你关闭shell工具,服务也就自然停止了。

停止脚本

stop.sh:

#!/bin/sh
tpid=`cat tpid | awk '{print $1}'`
if [ ${tpid} ]; then
 tpid=`ps -aef | grep $tpid | awk '{print $2}' |grep $tpid`
 if [ ${tpid} ]; then
  kill -9 $tpid
 fi
fi
> tpid

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

测试使用

启动

进入start.sh所在目录,一般从远程拷到服务器上的文件是没有执行权限的,所以我们先给文件添加执行权限。

chmod +x start.sh

 
 
  • 1

顺便把stop.sh的权限也加了。

chmod +x stop.sh

 
 
  • 1

然后启动脚本:

./start.sh

 
 
  • 1

同级目录下会生成info.log文件,里面有启动信息。
查看info.log,看下端口是多少:

这里写图片描述

图(5)

很明显,也是1017端口。
我们只需在license server address填入服务器地址和端口就行了。
如果有域名的话,可以通过nginx把域名+/idea映射到1017端口下,我就是这样做的(具体操作这里就不多说了,搜一下nginx的nginx.conf就行了)。
这里写图片描述

图(6)

停止

./stop.sh

 
 
  • 1

这没什么好说的。

自定义参数

我们可以在IntelliJIDEALicenseServer_linux_amd64后面接一些参数搭建只属于自己的服务器。

-l 指定绑定监听到哪个IP(私人用)
-u 用户名参数,当未设置-u参数,且计算机用户名为^[a-zA-Z0-9]+$时,使用计算机用户名作为idea用户名
-p 参数,用于指定监听的端口
-prolongationPeriod 指定过期时间参数,一般不设置


 
 
  • 1
  • 2
  • 3
  • 4
  • 5

举个例子:

IntelliJIDEALicenseServer_linux_amd64 -p 1000 -u ooo


 
 
  • 1
  • 2

这样你的激活端口就变成了1000,而且注册信息会显示Your copy licensed to ooo,这里-u后面不支持中文,我测过了。

服务器主页

我们可以在启动文件(比如linux就是IntelliJIDEALicenseServer_linux_amd64windows就是IntelliJIDEALicenseServer_windows_amd64.exe)的同级目录新建一个IntelliJIDEALicenseServer.html文件,那么在浏览器访问服务器地址的时候,就会访问到IntelliJIDEALicenseServer.html的内容,如果没有IntelliJIDEALicenseServer.html,回访not found字符串。
如果使用脚本文件启动,比如start.sh,请把IntelliJIDEALicenseServer.html放在脚本文件的同级目录。

我的授权服务器地址

如果你们嫌麻烦,不想自己搭,直接用https://idea.ouyanglol.com/ 就行了。

相关文章
|
3天前
|
搜索推荐 编译器 Linux
一个可用于企业开发及通用跨平台的Makefile文件
一款适用于企业级开发的通用跨平台Makefile,支持C/C++混合编译、多目标输出(可执行文件、静态/动态库)、Release/Debug版本管理。配置简洁,仅需修改带`MF_CONFIGURE_`前缀的变量,支持脚本化配置与子Makefile管理,具备完善日志、错误提示和跨平台兼容性,附详细文档与示例,便于学习与集成。
271 116
|
18天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
12天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
663 219
|
5天前
|
数据采集 人工智能 自然语言处理
Meta SAM3开源:让图像分割,听懂你的话
Meta发布并开源SAM 3,首个支持文本或视觉提示的统一图像视频分割模型,可精准分割“红色条纹伞”等开放词汇概念,覆盖400万独特概念,性能达人类水平75%–80%,推动视觉分割新突破。
349 34
Meta SAM3开源:让图像分割,听懂你的话
|
10天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1574 157
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
897 61
|
7天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
295 140