IDEA-设置-Java编译器对常量字符串过长的处理之适用于JDK17版本eclipse编译解决方案

简介: IDEA-设置-Java编译器对常量字符串过长的处理之适用于JDK17版本eclipse编译解决方案

在前一篇https://developer.aliyun.com/article/1179009?spm=a2c6h.13148508.setting.14.2fd54f0e6B84bI撰写字符串过长的解决方案的文章里写到jdk8的源码如果遇到字符串过长的问题,可以通过修改Java编译器为Eclipse解决,但是jdk17的版本的源码却报如下的错误:

java: java.lang.IllegalArgumentException: source level should be in '1.1'...'1.8','9'...'14' (or '5.0'..'14.0'): 17

上述报错翻译成中文就是:源码级别应该是1.1-1.8,9-14(或者5-14)。大概明白了就是这个IDEA绑定的这个eclipse编译器不支持JDK14以上的源码级别。这一点没有找到文档说明,从IDEA的官方文档关于编译器的部分也没找到说明

1679464159884.png

但是仔细推敲发现了一个问题,就是如果你不乐意使用idea绑定的eclispe可以使用ECJ batch compiler tool。(谁会不乐意使用你大名鼎鼎的idea绑定的编译器呢,这不遇到问题了吗)。从这一点我就猜测,就是IDEA绑定的Eclipse编译器是不支持jdk高版本的源码级别的。于是就从eclipse编译器入手,看看如何解决了,IDEA里面提供了这么一个配置,就是在如下的Setting页面

1679464385242.png

于是我就从eclipse的官方找到了这个传说中的ECJ batch compiler tool即上图红色框的ecj-4.27.jar。

1679464478757.png

下载这个3M的小jar,然后配置到idea中,果然好使。字符串过长的问题解决。有的同学会说,你为啥要写那么长的字符串,可以使用拼接和StringBuilder去处理,这些方案都是可以的,我就是想找找配置上的方案。哈哈。

目录
相关文章
IDEA修改JDK版本
在IDEA中修改项目JDK版本的方法如下:1. 右键点击项目;2. 选择“Open Module Settings”,如图所示;3. 在弹出窗口中配置自定义的JDK路径。通过以上步骤,可轻松更改项目所使用的JDK版本,满足不同开发环境的需求。
3914 65
|
11月前
|
IDE Ubuntu Java
在Ubuntu18.04安装兼容JDK 8的Eclipse集成开发环境的指南。
完成以上步骤后,您将在Ubuntu 18.04系统上成功安装并配置了Eclipse IDE,它将与JDK 8兼容,可以开始进行Java开发工作。如果遇到任何问题,请确保每一步骤都正确执行,并检查是否所有路径都与您的具体情况相匹配。
495 11
|
Java Linux
java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类
本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。
1130 2
|
10月前
|
Ubuntu Java Android开发
在Ubuntu 18.04上安装与JDK 8兼容的Eclipse版本的步骤。
安装过程结束后,您就可以开始使用Eclipse来开发您的Java项目了,并且确保它与JDK 8兼容无误。这个过程涉及的是一个基本的安装流程,针对使用Java 8的用户,Eclipse的其他配置和插件安装根据个人开发环境和需求来定制。
555 0
|
Java 关系型数据库 MySQL
在Linux操作系统上设置JDK、Tomcat、MySQL以及J2EE后端接口的部署步骤
让我们总结一下,给你的Linux操作系统装备上最强的军队,需要先后装备好JDK的弓箭,布置好Tomcat的阵地,再把MySQL的物资原料准备好,最后部署好J2EE攻城车,那就准备好进军吧,你的Linux军团,无人可挡!
499 18
|
存储 IDE Java
java设置栈内存大小
在Java应用中合理设置栈内存大小是确保程序稳定性和性能的重要措施。通过JVM参数 `-Xss`,可以灵活调整栈内存大小,以适应不同的应用场景。本文介绍了设置栈内存大小的方法、应用场景和注意事项,希望能帮助开发者更好地管理Java应用的内存资源。
912 4
|
数据采集 算法 Java
如何在Java爬虫中设置动态延迟以避免API限制
如何在Java爬虫中设置动态延迟以避免API限制
|
Java Linux iOS开发
如何配置 Java 环境变量:设置 JAVA_HOME 和 PATH
本文详细介绍如何在Windows和Linux/macOS系统上配置Java环境变量。
20475 12
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
534 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
Java Linux iOS开发
如何设置 Java 的环境变量
设置Java环境变量是使用Java开发工具和运行Java程序的前提。主要步骤包括:安装JDK,配置系统环境变量中的JAVA_HOME、PATH和CLASSPATH,确保命令行可直接调用javac和java命令。
811 6