Witajcie,
Mam pewien problem z uruchomienem programu z wiersza poleceń. Program uruchamiam tak:
C:\>java -jar //svlkp004/groups/IT/"42 Systemy"/OEE/OEE.jar databaseUser databasePassword cardCode prodOrderNo itemNo itemType
Jak widać jest to uruchomienie z parametrami, do tej chwili wszystko jest ok. W następnym kroku mam jednak odczytanie konfigurcji podłączenia do bazy z pliku config.txt:
public static Connection getConnectionWithLogin(String user, String password) throws SQLException, Exception
{
BufferedReader reader = null;
reader = new BufferedReader(new InputStreamReader(new FileInputStream("config.txt"),"UTF-8"));
String[] properties=new String[10];
String line = null;
int i=0,j=0;
while((line = reader.readLine())!=null)
{
if(i>0)
{
if(i%2!=0){
if((i==5)|(i==7))
{
properties[j]=Aes.decrypt(line);j++;
}
else{properties[j]=line;j++;}
}
}
i++;
}
String databaseURL="jdbc:sqlserver:"+properties[0]+";databaseName="+properties[1];
java.util.Properties props = new java.util.Properties();
props.put("user", user);
props.put("password",password);
props.put("charSet", properties[4]);
Connection connection = null;
connection = DriverManager.getConnection(databaseURL,props);
return connection;
}
I tutaj zaczyna się mój problem. Gdy program odpalany jest z wiersza poleceń nie potrafi wczytać pliku konfiguracyjnego:
reader = new BufferedReader(new InputStreamReader(new FileInputStream("config.txt"),"UTF-8"));
Zwyczajnie go nie znajduje, prawdopodobnie przez źle podaną lokalizacje pliku. Zaczyna działać dopiero gdy uruchomi program nie z lokalizacji C a z miejsca gdzie jest zamieszczony program:
G:\IT\42 Systemy\OEE>java -jar G:/IT/"42 Systemy"/OEE/OEE.jar databaseUser databasePassword cardCode prodOrderNo itemNo itemType
Jak moge to zmienić (jeśli można) aby mógł odpalać program z dowolnej lokalizacji. Trzeba pewnei zmienić lokalizacje FileInputStream ale nie wiem jak.
Będe wdzięczny za pomoc.