作者ntouckcm (莉)
看板java
标题Re: [问题] 请问有没有人用过CDT
时间Thu Apr 15 20:36:36 2010
原本Plug-ins会产生一个runtime-New_configuration资料夹,里面会产生设定好的
.metadata资料夹 和 project 资料夹(也就是metadata area 和 data area)
我的想法是
以上的资料都先自动产生 ,然後 把要parse的c/c++程式档 自动放在project里
在电脑上的位置 去parse
public static IFile execute(){
IWorkspace ws = ResourcesPlugin.getWorkspace();
IProject[] ps = ws.getRoot().getProjects();
IFile ifile = null;
for(int i=0;i<ps.length;i++){
IProject p = ps[i]; //runtime-New_configuration底下的资料夹名称
IPath location = p.getLocation();
ifile = p.getFile("SampleApp.bbcc"); //filename
}
return ifile;
}
public static void main(String[] args) {
IFile inputFile=execute();
......................
if (CoreModel.isTranslationUnit(inputFile)) {
.......
}
}
但是出现一个问题
Exception in thread "main" java.lang.IllegalStateException:
Workspace is closed.
at org.eclipse.core.resources.ResourcesPlugin.
getWorkspace(ResourcesPlugin.java:340)
at org.dworks.bbcdt.ui.action.main.execute(main.java:25)
at org.dworks.bbcdt.ui.action.main.main(main.java:50)
上网查了一下
好像 一定要run 插件
You have to run it from a run-time Eclipse/RCP application,
and do the work in one of the Eclipse-supported methods.
这行才能work IWorkspace ws = ResourcesPlugin.getWorkspace();
我的问题是
不能指定绝对路径 去parse吗?
EX:E:\\progSrc\runtime-New_configuration\project\file_name.bbcc 吗?
--------------------------------------------------------------------------
public IFile execute(){
和以上相同....
ifile = p.getFile("SampleApp.bbcc");
.........
}
public void run(IAction action) {
...........以上相同
}
这样可以不用在new 新的project和建新的file
把file放在runtime-New_configuration然後指定档名,就可以parse。
但是目标是可以从main开启
这只是我的想法~请大大帮我看~ 有甚麽问题~~
有没有甚麽方法可以解决目前的问题,或者此路根本行不通,或者有别的看法~~
给我些建议或指引!!
谢谢大家!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.245.61
※ 编辑: ntouckcm 来自: 140.116.245.61 (04/15 20:37)
※ 编辑: ntouckcm 来自: 140.116.245.61 (04/15 20:50)
※ 编辑: ntouckcm 来自: 140.116.245.61 (04/15 20:55)