2017-03-09 26 views
1

文件到嵌入式實例。當我嘗試導入我的.properties文件到我的Java類中,我得到以下錯誤:IOException異常將數據加載到BlazegraphEmbedded我有我的加載性能Blazegraph問題

Exception in thread "main" java.io.IOException: Stream closed 
at java.io.BufferedInputStream.getInIfOpen(Unknown Source) 
at java.io.BufferedInputStream.read1(Unknown Source) 
at java.io.BufferedInputStream.read(Unknown Source) 
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source) 
at sun.nio.cs.StreamDecoder.implRead(Unknown Source) 
at sun.nio.cs.StreamDecoder.read(Unknown Source) 
at java.io.InputStreamReader.read(Unknown Source) 
at java.io.Reader.read(Unknown Source) 
at java.util.Properties$LineReader.readLine(Unknown Source) 
at java.util.Properties.load0(Unknown Source) 
at java.util.Properties.load(Unknown Source) 
at blazegraph_tinkerpop_tryout.blazegraph_data_load.loadProperties(blazegraph_data_load.java:55) 
at blazegraph_tinkerpop_tryout.blazegraph_data_load.main(blazegraph_data_load.java:32) 

電話loadProperties功能從主:

Properties props = loadProperties("sampleprops.properties"); 

loadProperties功能(檢查看看文件路徑是否有效,然後發送給讀者):

public static Properties loadProperties(String resource) throws IOException 
{ 
    Properties p = new Properties(); 
    Path path = Paths.get(resource); 
    Boolean bool = Files.exists(path); 
    if (bool) 
    { 
     System.out.println("File was found. Attempting data load..."); 
     InputStream is = blazegraph_data_load.class.getResourceAsStream(resource); 
     p.load(new InputStreamReader(new BufferedInputStream(is))); 
     return p; 
    } 
    System.out.println("The file you entered was not found."); 
    return null; 
} 

這裏是我的文件個sampleprops.properties看起來像:

com.bigdata.journal.AbstractJournal.bufferMode=DiskRW 
com.bigdata.journal.AbstractJournal.file=blazegraph.jnl 

我已經從以下應用Blazegraph描述here樣品的安裝說明。如果它有所作爲,我使用的是Blazegraph/Tinkerpop3實現發現here

回答

0

我發現了一個解決辦法:我換我getResourceAsStream方法將FileInputStream方法。

問題在於放置我的屬性文件。 FileInputStream方法似乎更容易放置在您放置文件的位置。

+0

感謝編輯@honk :) – hayfreed