Merhaba java uygulamasında src/main/resources dosyasından bir yapılandırma dosyası kullanıyorum. Yani şimdimaven ile oluşturulduktan sonra src/main/resources kaynağından bulunamadı
new BufferedReader(new FileReader(new File("src/main/resources/config.txt")));
Ben maven mvn assembly:assembly
kullanarak bu inşa ediyorum: Bu gibi benim sınıfında okuyorum. Uygulamamı çalıştırdığınızda
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.3</version>
<configuration>
<finalName>TestSuite</finalName>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.some.package.Test</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Bu yüzden bu hatayı alıyorum:
src\main\resources\config.txt (The system cannot find the path specified)
Ama şu benim monte kavanoz tıkladığında bunu görebiliyorum İşte benim pom.xml'Bu bunun için biraz içeride kimse yanlış yaptığımı biliyor mu?
Maven'in bu farklılığa yol açtığını açıklayan cevabınıza biraz metin ekleyebilir misiniz? Bu büyük bir yardım olurdu. Teşekkürler – theJollySin
Belirtildiği gibi, Maven 'src/main/resources' kaynaklarını sınıf yolunun köküne koyar, bu yüzden JAR dosyasında 'src/main/resources' dizini yoktur - aynı şekilde' .class' dosyaları src/main/java 'dizinde bulunmuyor. bu mantıklı mı? – beny23
Statik bir bağlamdaysanız, "getClass()" yerine "Thread.currentThread(). GetContextClassLoader()" öğesini de kullanabilirsiniz. –