浏览 5606 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-12-15
最后修改:2009-11-22
工具类: import java.io.IOException; import java.io.InputStream; import java.util.List; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IFolder; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IProjectDescription; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.FileLocator; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.Path; import org.eclipse.wst.common.componentcore.ComponentCore; import org.eclipse.wst.common.componentcore.resources.IVirtualComponent; import org.eclipse.wst.common.componentcore.resources.IVirtualFolder; import org.osgi.framework.Bundle; import com.cvicse.inforsuite.studio.core.Activator; /** * StudioCoreUtil工具类. * * @author huang_wei * */ public class StudioCoreUtil { /** * 返回Project应用目录指定目录的位置. * * @param pj * project应用项目 * @param folder * 目录名称 * @return 目录的位置 */ public static IFolder getWebDir(final IProject pj, String folder) { final IVirtualComponent vc = ComponentCore.createComponent(pj); final IVirtualFolder vf = vc.getRootFolder().getFolder(folder); return (IFolder) vf.getUnderlyingFolder(); } /** * 复制资源到工作空间指定的路径中. * * @param src * 插件中资源的路径 * @param dest * 工作空间中指定路径 */ public static void copyFromPlugin(final IPath src, final IFile dest) throws CoreException{ try { final Bundle bundle = Activator.getDefault().getBundle(); final InputStream in = FileLocator.openStream(bundle, src, false); if(!dest.exists()){ dest.create(in, true, null); } } catch (IOException e) { throw new CoreException(Activator.createErrorStatus(e.getMessage(), e)); } } /** * 将list中的jar包复制到WEB-INF/lib下 * * @param pj * Studio Web应用项目 * @param list * 包含jar包的list * @param folderName * 目录名称 */ public static void addJarToLib(final IProject pj,IProgressMonitor monitor, final List<String> list,final String folderName){ final IFolder webInfLib = StudioCoreUtil.getWebDir(pj, "WEB-INF/lib"); try{ //复制jar包 for(String jar : list){ StudioCoreUtil.copyFromPlugin(new Path(folderName+jar), webInfLib.getFile(jar)); monitor.worked(1); } }catch(CoreException e){ Activator.log(e); } } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-11-17
直接用ANT写不是更简单?
|
|
返回顶楼 | |
发表时间:2008-11-27
用Ant? 高招!
我考虑下在如何使用ant来移动该“文件”,如您有该经验,请不惜赐教 |
|
返回顶楼 | |