2012-01-18 141 views
16

我想创建一个脚本来检出cvs中的一些项目并自动将它们导入到eclipse中。我可以检查一切到工作区文件夹中,但项目不会出现在eclipse中。我必须手动导入它们。有没有办法使用命令行导入项目?eclipse导入项目使用命令行

感谢

凯利

+0

可能重复:http://stackoverflow.com/questions/1718456/create-an-eclipse-project-on-the-command-line – amcnabb 2013-02-20 21:39:42

+2

这不是因为在那个问题中提到了CDT,并且提出了取决于CDT的解决方案,并且目前是最受投票支持的方案。 – 2014-02-19 05:29:22

回答

0

运行此脚本,让我知道,如果您有任何疑问。

eclipse -nosplash 
    -application org.eclipse.cdt.managedbuilder.core.headlessbuild 
    -import {[uri:/]/path/to/project} 
    -build {project_name | all} 
    -cleanBuild {projec_name | all} 

这里是日食链接它会有益你

Checking out a project from a CVS repository

+0

不,它没有工作......发生异常,项目没有导入。日志文件错误的开始是这样的!!SESSION 2012-01-18 16:25:03.424 ------------------------ ----------------------- eclipse.buildId = M20110909-1335 java.version = 1.6.0_30 java.vendor = Sun Microsystems Inc. BootLoader常量:OS = linux,ARCH = x86_64,WS = gtk,NL = en_US 框架参数:-product org.eclipse.epp.package.jee.product -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import。 ./../workspace/subwire/ -build all -clean全部生成 – 2012-01-18 18:30:07

+0

命令行参数:-os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.jee.product -application org.eclipse.cdt .managedbuilder.core.headlessbuild -import ../../workspace/subwire/ -build all --clean全部生成 !ENTRY org.eclipse.osgi 4 0 2012-01-18 16:25:34 .013 !MESSAGE应用程序错误 !STACK 1 java.lang.RuntimeException:应用程序“org.eclipse.cdt.managedbuilder.core.headlessbuild”在注册表中找不到。 – 2012-01-18 18:31:35

+0

我认为它的CSV格式而不是cvs。 ,你想显示数据在哪里?在你的SQLite或其他? – NovusMobile 2012-01-19 05:22:38

3

一个可行的方法是从ANT +的Groovy: 首先创建一个包含以下内容的build.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 
<project name="project" default="default"> 
<taskdef name="groovy" 
     classname="org.codehaus.groovy.ant.Groovy" 
     classpath="/home/me/workspace/Groovy/lib/groovy-all-2.1.4.jar" /> 
<target name="default"> 
    <groovy> 
     bundle = org.eclipse.core.runtime.Platform.getBundle("org.eclipse.core.resources"); 
     resPlugin = bundle.loadClass("org.eclipse.core.resources.ResourcesPlugin"); 
     root = resPlugin.getWorkspace().getRoot(); 
     project = root.getProject("new"); 
     project.create(null); 
     project.open(null); 
     resPlugin.getWorkspace().save(true, null); 
    </groovy> 
</target> 
    </project> 

然后执行:

./eclipse -nosplash -data /home/me/workspace -application org.eclipse.ant.core.antRunner -buildfile /home/me/build.xml 

当然,一个完整的脚本将包含更多的代码,可能使用IWorkspaceRunnable等运行,但基本知识在这里。只要确保你想从Eclipse中使用的任何类都使用Platform.getBundle + bundle.loadClass机制来定位。