因为我需要在 HTTP 请求中自定义 Host 标头,所以我需要使用以下参数启动我的 Spring Boot Java 应用程序(自 JDK 12 起可用):
java -jar -Djdk.httpclient.allowRestrictedHeaders=host application.jar
但是如何将它传递到 maven pom.xml 文件中,以便能够在由于缺少此标志而失败的测试期间使用此参数?
我尝试按以下方式使用 maven-compiler-plugin:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>-Djdk.httpclient.allowRestrictedHeaders=host</arg>
</compilerArgs>
</configuration>
</plugin>
但这是错误的:
错误:无效标志:-Djdk.httpclient.allowRestrictedHeaders=host
以下示例也不起作用:
-jdk.httpclient.allowRestrictedHeaders=主机
jdk.httpclient.allowRestrictedHeaders=主机
所以我尝试使用 spring-boot-maven-plugin
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<jvmArguments>-Djdk.httpclient.allowRestrictedHeaders=host</jvmArguments>
</configuration>
</plugin>
但它也不起作用,因为在这种情况下该标志被忽略,并且当我运行 mvn test 时出现限制错误。当我使用此标志运行 java 时,不会发生这种情况。
ITMISS
相关分类