我有一个包含此代码的jar文件
import java.io.File
import java.nio.file.Paths
import org.cassandraunit.utils.EmbeddedCassandraServerHelper
object CassandraMockBootable extends App {
println("Running embedded Cassandra.........")
val file = Paths.get("/target/classes/cassandra.yaml").toFile
assert(file.exists())
EmbeddedCassandraServerHelper.startEmbeddedCassandra(file, 50000)
}
这个jar由运行java进程的maven插件在另一个应用程序中使用
<plugin>
<groupId>com.bazaarvoice.maven.plugins</groupId>
<artifactId>process-exec-maven-plugin</artifactId>
<version>0.8</version>
<executions>
<execution>
<id>Embedded-Cassandra</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start</goal>
</goals>
<configuration>
<name>Embedded-Cassandra</name>
<skip>${skipStartService}</skip>
<arguments>
<argument>java</argument>
<argument>-XX:+HeapDumpOnOutOfMemoryError</argument>
<argument>-Xss1M</argument>
<argument>-XX:+UseParallelGC</argument>
<argument>-cp</argument>
<argument>../../mock-service/target/lib/*</argument>
<argument>mocks.bootables.CassandraMockBootable</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
我不知道该怎么做,但我一直无法通过考试 cassandra.yaml
而Assert永远不起作用。
我尝试将该文件放入src的资源中,并在生成的jar项目和consumer项目中进行测试,但什么都没有。Assert总是失败的。
知道我做错什么了吗?
当做
2条答案
按热度按时间k4ymrczo1#
创建一个资源文件夹并将yaml文件放在其中,不要放在目标文件夹路径中,因为每次生成时目标文件夹总是被刷新,这使得文件不可用。
因此,请创建单独的资源文件夹并保留yaml文件,然后尝试访问
pdkcd3nj2#
您似乎正在使用相对路径。删除第一个斜杠:
或者,添加一个点:
或者提供完整路径