java.lang.NoSuchMethodError: org.springframework.http.MediaType.getCharset()Ljava/nio/charset/Charset
を取得しています
ant
を経由して、私の
TestNG
テストを実行しようと
java.lang.NoSuchMethodErrorの:org.springframework.http.MediaType.getCharset()Ljava/NIO /文字セット/文字セット
(フル例外については下記を参照)Webアプリケーションのコンパイルや実行に問題はありませんが、ant経由でテストを実行することはできません。私はこれがクラスロードの問題だと確信していますが、実行時にどのクラスのロードを行うべきかは不明です。私はSpring 4.3.1とSpring Security 4.1.1を使用しています。
「正しい」バージョンorg.springframework.http.MediaType
が使用されるように、ジャーをロードする特定の順序はありますか? Javaはあなたがロードされ、慣れるあなたのクラスパスに4.3.1以下のスプリングコアバージョンを持っていることを意味し、それが見つからなかった
[testng] org.testng.TestNGException:
[testng] An error occurred while instantiating class com.avada.rest.api.GroupsIntTest: org.springframework.http.MediaType.getCharset()Ljava/nio/charset/Charset;
[testng] at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:388)
[testng] at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:290)
[testng] at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:125)
[testng] at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:191)
[testng] at org.testng.TestClass.getInstances(TestClass.java:104)
[testng] at org.testng.TestClass.initTestClassesAndInstances(TestClass.java:90)
[testng] at org.testng.TestClass.init(TestClass.java:82)
[testng] at org.testng.TestClass.<init>(TestClass.java:45)
[testng] at org.testng.TestRunner.initMethods(TestRunner.java:409)
[testng] at org.testng.TestRunner.init(TestRunner.java:247)
[testng] at org.testng.TestRunner.init(TestRunner.java:217)
[testng] at org.testng.TestRunner.<init>(TestRunner.java:161)
[testng] at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:555)
[testng] at org.testng.SuiteRunner.init(SuiteRunner.java:168)
[testng] at org.testng.SuiteRunner.<init>(SuiteRunner.java:117)
[testng] at org.testng.TestNG.createSuiteRunner(TestNG.java:1359)
[testng] at org.testng.TestNG.createSuiteRunners(TestNG.java:1346)
[testng] at org.testng.TestNG.runSuitesLocally(TestNG.java:1200)
[testng] at org.testng.TestNG.runSuites(TestNG.java:1124)
[testng] at org.testng.TestNG.run(TestNG.java:1096)
[testng] at org.testng.TestNG.privateMain(TestNG.java:1425)
[testng] at org.testng.TestNG.main(TestNG.java:1394)
[testng] Caused by: java.lang.NoSuchMethodError: org.springframework.http.MediaType.getCharset()Ljava/nio/charset/Charset;
[testng] at org.springframework.web.client.RestTemplate$AcceptHeaderRequestCallback.getSupportedMediaTypes(RestTemplate.java:757)
[testng] at org.springframework.web.client.RestTemplate$AcceptHeaderRequestCallback.doWithRequest(RestTemplate.java:733)
[testng] at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:617)
[testng] at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:580)
[testng] at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:287)
[testng] at com.avada.rest.api.ApiTestClient.getAll(ApiTestClient.java:81)
[testng] at com.avada.rest.api.GroupsIntTest.<clinit>(GroupsIntTest.java:17)
[testng] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[testng] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
[testng] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[testng] at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
[testng] at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29)
[testng] at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:377)
[testng] ... 21 more
[testng] The tests failed.
Javaバージョンの不一致のようです。 – paulsm4
@ paulsm4 - 私の '$ {ant.java.version}'と '$ {java.version}'は '1.7'と' 1.7.0_80'と表示されます。私の '$ JAVA_HOME'は'/usr/lib/jvm/java-7-oracle'として表示されます.Javaのバージョンを調べるには他にどのような場所が必要ですか? –
あなたはきれいなプロジェクトを構築しようとしましたか? –