package com.nantian.iwapdesigner.transactioneditor.util;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.Set;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jdt.launching.JavaRuntime;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.part.FileEditorInput;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.ide.eclipse.beans.core.internal.model.Bean;
import org.springframework.ide.eclipse.beans.core.model.IBean;
import org.springframework.ide.eclipse.beans.core.model.IBeansConfig;
import org.springframework.ide.eclipse.beans.core.model.IBeansProject;
import com.nantian.iwapdesigner.transexplorer.model.IWAPBeansModel;
/**
* Class Helper to load class of java project.
*
* @author elvis refelction part
*
*
*/
public class ClassUtil {
private static final String PROTOCAL_PREFIX = "file:///";
public static Class loadClass(IJavaProject project, String className)
throws CoreException, ClassNotFoundException, MalformedURLException {
ClassLoader loader = getProjectClassLoader(project);
Class clazz = loader.loadClass(className);
loader = null;
return clazz;
}
public static ClassLoader getProjectClassLoader(IJavaProject project)
throws CoreException, MalformedURLException {
String[] classPaths = JavaRuntime
.computeDefaultRuntimeClassPath(project);
URL[] urls = new URL[classPaths.length];
for (int i = 0; i < classPaths.length; i++) {
urls[i] = new URL(PROTOCAL_PREFIX
+ computeForURLClassLoader(classPaths[i]));
}
return new URLClassLoader(urls);
}
private static String computeForURLClassLoader(String classpath) {
if (!classpath.endsWith("/")) {
File file = new File(classpath);
if (file.exists() && file.isDirectory()) {
classpath = classpath.concat("/");
}
}
return classpath;
}
}
分享到:
相关推荐
在使用spring mvc 使用反射自动生成对象 的代码 方便使用
正则表达式调试编辑器, eclipse插件Regex Util,装好后,即可从视图打开Regex Util视图了,比较好用!
ClassUtil::callMethodForArgs($this,$args); } public function construct_() { echo ("0 args function is called "); } public function construct_number($num) { echo "arg 1 function is ...
修改datax源码plugin-unstructured-storage-util下的UnstructuredStorageReaderUtil.class 加上一个判断,因为在hdfs中,null值存储的是 \N ,所以需要把它转换成 null存储到Mysql中
- 修改 `plugin.xml` 文件,在 `<libraries>` 节点中加入这两个 JAR 文件的引用,示例如下: ```xml *"/> <library name="lib/backport-util-concurrent-3.1.jar"> *"/> ``` - 在安装过程中,请确保...
简介 我已经在 Windows 中使用 eclipse 编辑器为 java 开发活动开发了一个小的 eclipse 实用程序插件。 它具有以下特点。 复制文件路径(Windows 样式、多选) 复制文件路径(Unix 样式,多选) 将文件和文件夹...
解决datax mysql8兼容性问题
在给定的`UtilClass`中,我们有五个主要的工具类:`StringUtil`、`FileUtil`、`ConnectDB`、`DateUtil`和`TimeUtil`。这些类分别专注于字符串操作、文件处理、数据库连接、日期和时间管理。接下来,我们将详细探讨每...
Eclipse JDT(Java Development Tools)2.0 插件开发者指南是一份由OTI(Open Tooling Initiative)编写的文档,主要介绍了如何开发基于Eclipse平台的Java开发工具插件。该文档提供了详细的指导和示例,帮助开发者...
eclipse Activiti 插件 jar包 出错 org.eclipse.emf.transaction org.eclipse.emf.validation org.eclipse.emf.workspace org.activiti.designer.feature org.eclipse.graphiti.feature org.activiti.designer....
- 修改 `Axis2_Codegen_Wizard_1.3.0` 下的 `plugin.xml` 文件,在 `<runtime>` 标签内添加以下内容: ``` *"/> <library name="lib/backport-util-concurrent-3.1.jar"> *"/> ``` - 保存文件后重启 ...
官方版本,亲测可用
Eclipse Utility Plugin是一款专为Java开发者设计的增强工具插件,其主要目标是提升开发效率,提供一系列实用的通用特性。这款插件是基于Eclipse IDE进行开发的,旨在优化和扩展Eclipse的基础功能,帮助程序员更高效...
打到org/eclipse/ui/internal/util/SWTResourceUtil.class 用winrar打开,同时也打开3.4的org.eclipse.ui.workbench_3.4.0.I20080606-1300.jar 到org/eclipse/ui/internal/util目录下 把SWTResourceUtil.class ...
自己使用的,32位版本的hadoop2.7.1,window下的主要插件都有包括hadoop-eclipse-plugin-2.7.1.jar、hadoop.dll和winutils.exe等等。hadoop2.7.2应该可以用,自己没试过,如果报UnsatisfiedLinkError: org.apache....
4. **字符串操作**:StringUtil是Jodd提供的字符串处理工具,包含了一系列方便的静态方法,如分割、替换、去除空白、检查格式等,极大地增强了Java字符串处理的能力。 5. **I/O流**:IoUtil是处理输入/输出流的利器...
【标题】"适用1.8.0版本的eclipse"所指的核心内容是Eclipse集成开发环境(Integrated Development Environment)与Java 1.8.0的兼容性。Eclipse是一款广泛应用的开源IDE,尤其在Java开发领域,它提供了丰富的功能,...
为了进一步增强其功能,Eclipse社区开发了许多插件,以支持各种特定的需求,比如“Regex Util”插件就是其中之一,专注于正则表达式的处理和测试。 正则表达式(Regular Expression)是一种模式匹配工具,可以用来...
官方版本,亲测可用