我在VS Code中打开了一个GradleSping Boot 项目,它像预期的那样接收了所有的单元测试。大多数测试运行时没有任何问题,但对于使用嵌入式数据库的测试,我得到了这个错误:org.springframework.dao.InvalidDataAccessApiUsageException: For queries with named parameters you need to use provide names for method parameters. Use @Param for query method parameters, or when on Java 8+ use the javac flag -parameters.
问题和解决方案从错误中都很清楚,但我不希望在任何地方都设置@Param,我不知道如何在运行测试时在VS Code中设置这个标志。是否可以在VS Code中设置javac标志,如果可以,我该怎么做?
我已经试着在设置中添加了以下几种变化。json,没有成功:
"java.test.config": {
"args": ["parameters"]
}
如果我使用gradle test
或IntelliJ运行这些测试,它们可以正常工作。
2条答案
按热度按时间g6ll5ycj1#
-parameters
应该是传递给Java编译器的参数,您可以遵循此指南:https://github.com/redhat-developer/vscode-java/wiki/Settings-Global-Preferences1.设置
java.settings.url
指向.prefs
文件。(你可以在任何你想要的地方创建它)1.在
.prefs
文件中,添加以下行:klh5stk12#
1.选择VSCode -〉文件-〉首选项-〉设置打开设置页面(用户或工作区)
1.输入“url”筛选出并查找Java〉设置:URL:
1.键入Java设置文件路径/名称(例如:D:\java.settings)
1.编辑Java设置文件(D:\java.设置)并添加以下行:
org.eclipse.jdt.core.compiler.codegen.methodParameters=generate
1.重新构建代码,现在应该可以了。