Zkusil bych si vzit /getResourceAsStream("")/ (nebo /getResource("")/), abych z toho ziskal typ File a znej si pak vytisknout |*getCanonicalPath <http://www.j2ee.me/javase/6/docs/api/java/io/File.html#getCanonicalPath%28%29>*().

To Vam ukaze, kde je root. Nedavno jsem to resil uplne stejnym zpusobem, ale kod jiz samozrejme nemam.

Arny
|
Dusan Zatkovsky wrote:
Ahoj.

Narazil som na problem s in-jar resources a neviem si rady.

Vyrobim si maven quickstart projekt. V src/main/resources vytvorim subor foo.txt. Nasledne v main() zavolam:

        x = Main.class.getResourceAsStream("/foo.txt");

Dostanem inputstream na ten foo.txt. Ten je v jar-e ulozeny priamo v roote ako /foo.txt.

Problem nastane v momente, ked do toho projektu pridam webservice client.
Od tohoto momentu mi getResource() vracia null. Pravdepodobne to bude suvisiet s tym, ze maven nejak preorganicuje projekt kvoli tej WS, ale ja neviem, kde mam ten foo.txt nasledne hladat.

V jar-e ho vidim v /META-INF/main/java/resources/foo.txt, ale neviem, kde vidi getResource() svoj root, pretoze som skusal od /META-INF postupne uberat kazdy podadresar a na vsetko som dostal null.

Tusi niekto?

D.

Odpovedet emailem