我想在Google appengine中使用一個小型圖書館;其中一個類別的其中一種方法(如MyClass.writeToFile()
)使用java.io.FileOutputStream
,這是列入黑名單的類別(當然不是white-listed)。如果未找到引用的Java類或將其列入黑名單,那麼何時檢測到該類?
這是否意味着MyClass
將在類加載時失敗,或者只是(如果)我嘗試調用違規的方法?在什麼時候檢查(「FileOutputStream不允許」)?當加載MyClass
文件,並檢測到它「引用/取決於」FileOutputStream(我不知道這是否在MyClass
字節碼中聲明)?或者在嘗試加載FileOutputStream
時,首次調用MyClass.writeToFile()
?
此外,假設方法MyClass.writeToFile()
不是我的圖書館必不可少的(但MyClass
是),有沒有一些解決方法,或者應該重構庫(而建,說兩種不同的罐子,一個完全成熟的和其他sandbox-友善) ?
爲什麼'java.io.FileInputStream'允許但不是'java.io.FileOutputStream'? – JAB 2011-05-26 20:16:55
@JAB:因爲Google AE容忍被讀取但不能被寫入。聽起來很合理。 – leonbloy 2011-05-26 20:21:50