0
내가 프로그래밍 C 프로젝트를 만드는거야에 CDT 빌더를 사용하지 :는, 프로그램 CDT를 사용하여 프로그래밍 방식으로 생성 된 C 프로젝트
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IWorkspaceRoot root = workspace.getRoot();
String projectName = projectNames[indices[i]];
IProject newProjectHandle = root.getProject(projectName.replace("Examples_", ""));
IProjectDescription description = workspace.newProjectDescription(newProjectHandle.getName());
IProject project = CCorePlugin.getDefault().createCDTProject(description, newProjectHandle, new NullProgressMonitor());
ICProjectDescriptionManager mngr = CoreModel.getDefault().getProjectDescriptionManager();
ICProjectDescription des = mngr.createProjectDescription(project, false);
ManagedProject mProj = new ManagedProject(des);
Configuration cfg = new Configuration(mProj, null, projectName + ".id", projectName);
cfg.setManagedBuildOn(false);
IBuilder bld = cfg.getEditableBuilder();
bld.setManagedBuildOn(false);
bld.setAutoBuildEnable(false);
CConfigurationData data = cfg.getConfigurationData();
des.createConfiguration(ManagedBuildManager.CFG_DATA_PROVIDER_ID, data);
mngr.setProjectDescription(project, des);
이것은 C 마법사에서 메이크 프로젝트를 생성하는 것과 동일하게 작동합니다.
이제는 프로젝트 속성에서 CDT 빌더를 프로그램 적으로 실행 취소해야합니다.
내 프로젝트 생성 코드에 한두 줄을 추가하여이 작업을 수행 할 수있는 쉬운 방법이 있습니까?
'빌더의 속성 페이지를 보면 org.eclipse.ui.externaltools.internal.ui.BuilderPropertyPage'입니다 비활성화 된 외부 도구 시작 구성을 만드는 것과 관련하여 실제로하기가 어렵습니다. 또한 빌더를 사용하지 못하게하면 모든 종류의 이상한 행동으로 이어질 수 있습니다. –
속성 페이지에서 빌더를 제거하는 것은 제 방식으로도 작동합니다. CDT 빌더는 필자가 가져온 다른 것들을 사용하기 때문에 필요하지 않습니다. –