Galera,
Alguem sabe como acessar um arquivo properties empacotado dentro de um .jar?
Colocando o arquivo properties fora eu consigo fazer funcionar, mas como to usando java web start preciso colocá-lo dentro do jar.
Vejam meu código:
try
{
FileInputStream fis = new FileInputStream(file);
Properties props = new Properties();
props.load(fis);
fis.close();
}
catch (IOException e)
{
e.printStackTrace();
}
Eu preciso fazer um variavel do tipo java.io.File receber algo mais ou menos assim:
getClass().getClassLoader().getResourceAsStream("Servidor.properties");
Fala Bruno, pelo que entendi você esta no caminho certo.
Este é um exemplo que uso em um dos meus programas.
java.io.InputStream in = getClass().getResourceAsStream("/com/microsiga/iReport/jasperreport.dtd");
return new org.xml.sax.InputSource( in );
Deve tentar algo parecido para resolver seu problema.
Fala ai Bruno, pelo que entendi você está no caminho certo.
Veja este exemplo:
java.io.InputStream in = getClass().getResourceAsStream("/com/microsiga/iReport/jasperreport.dtd");
return new org.xml.sax.InputSource( in );
Fala ai Bruno, pelo que entendi você está no caminho certo.
Veja este exemplo:
java.io.InputStream in = getClass().getResourceAsStream("/com/microsiga/iReport/jasperreport.dtd");
return new org.xml.sax.InputSource( in );
Fala ale-asilva,
Tentei das 2 formas, mas também não dá, pois o construtor de FileInputStream não aceita InputStream:
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream((File) in);
e
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream (in);
Foi mal, msg duplicada
Fala ale-asilva,
Tentei das 2 formas, mas também não dá, pois o construtor de FileInputStream não aceita InputStream:
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream((File) in);
e
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream (in);
Fala ale-asilva,
Tentei das 2 formas, mas também não dá, pois o construtor de FileInputStream não aceita InputStream:
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream((File) in);
e
java.io.InputStream in = getClass().getClassLoader().getResourceAsStream("Servidor.properties");
FileInputStream fsis = new FileInputStream (in);
Depois de muito procurar e tentar consegui colocar o properties dentro do JAR
ai vai como fiz:
Dentro de um pacote coloquei uma classe “Arquivo.java”
Depois dentro desse mesmo pacote coloquei o arquivo “prop.properties”
entao para obter um valor, em um metodo coloquei:
InputStream is = Arquivos.class.getResourceAsStream( “prop.properties” );
Properties properties = new Properties();
properties.load(is);
System.out.println(properties.getProperty(“chave1”));
is.close();
Espero que ajude
[]s