给java项目手动(代码)添加jar包

来源:互联网 发布:苹果设置铃声软件 编辑:程序博客网 时间:2024/05/17 07:42

public static void addClassPath(IJavaProject project, String jarPath) {
  try {
   IClasspathEntry[] oldClassPaths = project.getRawClasspath();
   //if already exists the jar file then return
   for (IClasspathEntry iClasspathEntry : oldClassPaths) {
    if (iClasspathEntry.getPath().toOSString().equals(jarPath)) {
     return;
    }
   }
   IClasspathEntry jreLibrary = JavaCore.newLibraryEntry(new Path(
     jarPath), null, null, false);
   List<IClasspathEntry> list = new ArrayList<IClasspathEntry>();
   list.addAll(Arrays.asList(jreLibrary));
   list.addAll(Arrays.asList(oldClassPaths));
   project.setRawClasspath((IClasspathEntry[]) list
     .toArray(new IClasspathEntry[list.size()]), null);
   refreshProject(project);
  } catch (JavaModelException e) {
   ELog.exception(e);
  }
 }

 

 

public static void refreshProject(IJavaProject project) {
  try {
   // the depth is infinite
   project.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
   project.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
  } catch (CoreException e) {
   ELog.exception(e);
  }
 }