当我阅读 Spring 源代码时,我找到了 StandardEnvironment 类。我想在计划java应用程序中使用StandardEnvironment,如下所示。但是这是错误的。你能帮我吗?
java.lang.Exception:未找到匹配的测试 [{ExactMatcher:fDisplayName=test]、{ExactMatcher:fDisplayName=test(com.dominos.cloud.user.dao.EnvimentTest)]、{LeadingIdentifierMatcher:fClassName=com. dominos.cloud.user.dao.EnvimentTest,fLeadingIdentifier=test]] 来自 org.junit.internal.requests.ClassRequest@2acf57e3 在 org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:40) 在 org.eclipse .jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java:83) 在 org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:74) 在 org.eclipse.jdt.internal .junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:49) 在 org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:526) 在 org.eclipse.jdt.internal.junit.runner .RemoteTestRunner.runTests(RemoteTestRunner.java:770) 在 org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:464) 在 org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java:210)
public class EnvimentTest {
@Test
public void test() {
StandardEnvironment enviment=new StandardEnvironment();
System.out.println(enviment.getProperty("Pk")==null?"not value":enviment.getProperty("Pk"));
}
}
最佳答案
您不能使用StandartEnvironment没有Spring,它就是Spring的一部分。
您实际上想要实现什么目标?您是否尝试在普通 java 应用程序中使用某种属性?使用 java.lang.System 怎么样?及其方法 getProperty?你认为你可以在java启动时传递所需的参数吗? ...就像添加 -DmyProperty=propertyValue
另一种可能对您有用的方法是 java.lang.Properties 。您可以创建一个属性对象并从InputStream(例如从文件)加载数据。
如果您需要为 Java 普通应用程序的不同运行支持不同的属性集,那么您可以结合使用这两种方法,并将需要读取所有属性的文件名作为系统参数给出。
这对您有帮助吗?
关于java - 如何在计划java应用程序中使用StandardEnvironment,而不是在spring中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61383481/