PHPSTORM.plugins

本文介绍如何通过使用PhpStorm的插件来增强开发体验,包括markdown插件、markdownnavigator以及针对ThinkPHP和Yii框架的特定插件,如ThinkStorm和YiiStorm,这些插件能够显著提高开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Plugins

phpstorm本身其实已经非常的好用了, 但是加上插件功能就更加的好用了

在File>Settings>Plugins>Browse repositories可以发现更多的插件, 下面介绍我常用的插件

markdown插件

markdown navigator

框架插件

ThinkPHP

ThinkStorm

## Yii

YiiStorm

转载于:https://my.oschina.net/u/2443527/blog/726002

### Maven 编译时 `NoSuchFieldError` 错误解决方案 当遇到 `[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile)` 报错并伴随 `java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'` 的提示时,通常是因为 JDK 版本与 maven-compiler-plugin 插件版本之间的兼容性问题引起的。 以下是可能的原因以及对应的解决方法: #### 原因分析 1. **JDK 和插件版本不匹配** 不同版本的 JDK 对应不同的内部实现细节。如果使用的 maven-compiler-plugin 版本较新而 JDK 较旧,则可能导致此类错误。例如,在某些情况下,maven-compiler-plugin 3.8.x 可能无法完全支持 JDK 8 或更早版本[^1]。 2. **IDE 配置冲突** 如果使用的是 IDE(如 IntelliJ IDEA),可能存在项目的编译器设置未正确同步到实际构建环境中的情况。这可以通过检查 File -> Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler 设置来验证是否存在配置差异[^2]。 3. **类加载顺序问题** 类似于 Flink 中通过 ChildFirstClassLoader 实现优先加载用户自定义 jar 包的方式[^3],在 Maven 构建过程中也可能存在类似的类加载冲突。具体来说,可能是由于项目依赖中引入了多个不同版本的工具链库(如 `tools.jar` 或者其他编译相关的组件)而导致的。 4. **插件版本升级带来的潜在风险** 升级至更高版本的 maven-compiler-plugin 后虽然能够解决问题,但也需要注意其对底层 API 调用方式的变化可能会引发新的异常。比如从 3.8.1 切换到 3.11.0 后成功解决了部分场景下的问题[^4],但这并不意味着适用于所有情形。 #### 解决方案 针对上述原因可采取如下措施逐一排查直至彻底修复该问题: 1. **调整 maven-compiler-plugin 版本** 修改 pom.xml 文件内的 plugin 定义部分指定合适的插件版本号。例如尝试降级回稳定版或者依据官方文档推荐的最佳实践选用最新稳定发布版本之一: ```xml <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.11.0</version><!-- 更改此值 --> <configuration> <source>17</source> <target>17</target> </configuration> </plugin> </plugins> </build> ``` 2. **确认 JDK 环境一致性** 确保本地开发机器上所安装的 JDK 版本满足目标 Spring Boot 应用的要求,并且 mvn 命令执行期间指向正确的 JAVA_HOME 路径。可通过命令行输入以下指令检验当前有效 JDK 是否符合预期: ```bash java -version echo $JAVA_HOME mvn -v ``` 3. **清理缓存重新构建** 删除 .m2/repository 下的相关目录后再运行 clean install 流程有助于排除残留数据干扰造成的影响: ```bash rm -rf ~/.m2/repository/org/apache/maven/plugins/ mvn clean install ``` 4. **核查 IDE 配置项** 若依旧存在问题则需进一步审查是否有额外因素介入影响到了最终效果。对于采用 JetBrains PhpStorm/IntelliJ 用户而言特别要注意 Global Libraries 设定里是否意外混入重复条目从而引起混乱状况发生。 --- ### 总结 综上所述,面对 Maven 编译时报出关于 `java.lang.NoSuchFieldError` 这种类型的错误消息时,首要任务便是定位清楚究竟是哪方面出现了偏差进而针对性地实施纠正动作即可恢复正常运作状态^[]^。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值