eclipse - 如何在 cp 或 mv 等自定义 Eclipse 插件中打开终端并运行 shell 命令?
问题描述
我是eclipse开发的新手。试图创建一个插件,它将文件从一个目录复制到另一个目录。介绍菜单如下
现在单击“复制文件”菜单,我想复制文件。为此,我想运行命令
cp file1.txt ../dir/file1.txt
我有如下处理程序,一旦我点击菜单就会执行。
public class SampleHandler extends AbstractHandler {
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
return null;
}
}
如何在我的handler.execute()
方法中运行上述命令来复制文件?
解决方案
考虑在您自己的代码中读取和写入文件。依赖外部 shell 应用程序是不可移植的。
PlatformUI
是获取实例的起点,获取你读写IWorkspace
的源和目标。IFiles
使用 、 和 的组合IFile#getContents()
来IFile#create()
处理IFile#setContents()
实际的 I/O。
推荐阅读
- node.js - 如何使用 postgresql 构造嵌套数组
- sql - 使用 bcp 的动态数据透视 SQL 查询给出“无法解析列级排序规则。BCP 复制失败”错误
- python - csv.writer 没有将整个列表写入从中读取的文件
- python - pytest 需要 Python '>=3.5' 但正在运行的 Python 是 2.7.10
- http - 为什么我们有 GET、POST 和 PUT 等 HTTP 动词,而不是 SELECT、INSERT 和 Update
- c# - C#:OpenXML 数字 Excel 单元格未返回正确值
- java - 通知未显示在锁定屏幕上
- xml - XSLT 1.0 - 如果输入 XML 中没有值,则隐藏/抑制标签
- php - Mysql 仅在之前插入行时更新
- php - 我想用干预/图像调整照片的大小