0
데이터 지속성이 약간 필요한 Bukkit 플러그인을 작성하고 있습니다. 다음은 ArrayList of Project를 파일에 저장하기 위해 만든 코드입니다.(닫힘) Java 직렬화가 작동하지 않습니다.
public class Project implements Serializable {...}
그것은 파일을 생성합니다,하지만 아무것도가 저장되지 않습니다
private ArrayList<Project> projects = new ArrayList<Project>;
private String filename = "plugins\\ProjectManager\\projects.cfg";
try {
FileOutputStream fos = new FileOutputStream(new File(filename));
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(projects);
oos.close();
} catch (Exception e) {
getLogger().severe("Unable to save projects to file. Data may have been lost.");
}
. 무엇이 잘못 될지에 대한 아이디어가 있습니까?
좋아요. 저는 이것을 비공식적으로 닫습니다. 직렬화 할 수없는 클래스의 다른 종속성 때문에이 방법으로 저장하는 것은 불가능합니다. 모든 도움을 주셔서 감사합니다.
당신이 코드의'catch' 블록에서 예외 스택 트레이스를 기록 할 경우 그것은 좋은 것입니다 작동합니다. –
코드가 컴파일되지 않습니다. 닫을 때 어떤 일이 일어날 지 잘 모르겠지만'flush()'를 명시 적으로 호출하십시오. –
아마도 Project의 일부 하위 구성 요소가 직렬화 할 수 없다는 오류 메시지가 표시됩니다. –