You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vaadin项目Maven构建失败与Spring属性注入异常求助

问题1:Maven编译时Java版本不兼容错误

解决步骤

  • 升级项目Java环境到17
    1. 打开IntelliJ的File -> Project Structure,将Project SDK切换为Java 17,Project language level设置为17。
    2. 修改项目根目录下的pom.xml,更新maven-compiler-plugin的配置,指定source和target版本为17:
<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>
  • 确保Maven使用Java 17执行
    进入IntelliJ的Settings -> Build, Execution, Deployment -> Build Tools -> Maven -> Runner,将JRE选项改为Java 17,避免Maven用旧版本JDK运行。
问题2:Spring @Value占位符错误导致Bean创建失败

解决步骤

  • 正确使用配置文件读取密钥(推荐方式)
    1. 在项目的src/main/resources目录下找到application.properties(yml格式则是application.yml),添加密钥配置:
webpush.public-key=你的实际公钥值
webpush.private-key=你的实际私钥值
  1. 在WebPushService类中通过@Value读取配置:
@Value("${webpush.public-key}")
private String publicKey;

@Value("${webpush.private-key}")
private String privateKey;
  • 硬编码赋值(仅临时测试用,不推荐)
    如果不需要配置文件,直接去掉@Value的占位符写法,给变量直接赋值:
private String publicKey = "你的实际公钥值";
private String privateKey = "你的实际私钥值";

内容的提问来源于stack exchange,提问作者Suki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 11:37:11