ここでは、Eclipse(ネオン)IDEのJEE Vaadinプロジェクトと、gradleを使用するビルドシステムを示します。しかし、私たちはテストクラスに問題があります。もし私たちが戦闘/耳をグラブルで構築すれば、すべてが大丈夫です。テストクラスは戦争アーカイブの一部ではありません。eclipseとgradle:テストクラスをデプロイしない
しかし、私たちがEclipseの中からwildflyサーバーに耳のプロジェクトを展開したいのであれば、テストクラスは戦争アーカイブの一部であるようです。
...
Caused by: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.LinkageError: Failed to link com/coco_on/docFlow/vaadin/admin/TestAdminRoles (Module "deployment.DFl_EAR.ear.DFl_Vaadin.war:main" from Service Module Loader)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)
at org.jboss.weld.util.cache.LoadingCacheUtils.getCacheValue(LoadingCacheUtils.java:49)
at org.jboss.weld.resources.DefaultReflectionCache.getBackedAnnotatedTypeAnnotationSet(DefaultReflectionCache.java:169)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.getAnnotations(BackedAnnotatedType.java:112)
at org.jboss.weld.annotated.slim.backed.BackedAnnotatedType.getAnnotation(BackedAnnotatedType.java:98)
at org.jboss.weld.bootstrap.BeanDeployer.processPriority(BeanDeployer.java:105)
at org.jboss.weld.bootstrap.BeanDeployer.processAnnotatedTypes(BeanDeployer.java:174)
at org.jboss.weld.bootstrap.BeanDeployment.createTypes(BeanDeployment.java:224)
at org.jboss.weld.bootstrap.WeldStartup.startInitialization(WeldStartup.java:381)
at org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(WeldBootstrap.java:76)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
... 3 more
Caused by: java.lang.NoClassDefFoundError: com/vaadin/testbench/TestBenchTestCase
...
TestAdminRoles
は、我々のテストクラスの一つとTestBenchTestCase
テストフレームワーク(Vaadinテストベンチ)で必要なクラスの一つです:耳を展開しながら、ので、我々は次のようにいくつかのエラーを取得します。しかし、このテストフレームワークは見つからないだろうし、これもOKだ。なぜなら、このライブラリを耳/戦争にリンクさせたくないからだ。
我々はまた、この記事を読んだことがある:https://stackoverflow.com/a/9820317/1465758
をだから我々は、展開からsrc/test/
ディレクトリを削除し、テストソースディレクトリに別のbinディレクトリを設定しています。しかし成功なし。上記のエラーは依然として存在します。
そして、私の質問は次のとおりです:eclipseがコンパイルしたテストクラスをwarファイルに入れないように、どうすればeclipseを設定できますか?