使用 p4java 在各种机器上同步文件,所以我使用 IClient.setRoot() 来相应地更改根。但是 IClient.setRoot() 实际上并没有更改客户端对象中的根。我在 setRoot() 调用之后立即查看了调试器
这是我连接到服务器后的代码。
client 是 IClient,p4Server 是 IServer。
prop 函数只是拉取工作空间和根目录的属性条目
我缺少什么来使 setRoot() 工作。谢谢!
client = p4Server.getClient(prop.getString("perforce.workspace"));
if (client == null) {
logger.error("Failed to fetch workspace: {}", prop.getString("perforce.workspace"));
} else {
File p4Dir = new File(prop.getPath("perforce.scripts.dest"));
if (!p4Dir.exists()) {
p4Dir.mkdirs();
}
client.setRoot(p4Dir.getPath());
logger.debug("Setting p4sync dest root to: {}",p4Dir.getPath() );
p4Server.setCurrentClient(client);