java 启动后流程后报错调用方式如下
public static void initialize() {
if (nameServerControllerThread != null && nameServerControllerThread.isAlive()) {
log.info("插件已经启动");
} else {
log.info("插件启动线程启动");
nameServerControllerThread = new Thread(new Runnable() {
@Override
public void run() {
// 注意这里会一直卡住,同步等待结束 所以要用一个线程装
try {
log.info("NameServerController 线程启动");
// 创建数据源并设置连接信息
SimpleDriverDataSource dataSource = new SimpleDriverDataSource();
dataSource.setDriverClass(com.mysql.jdbc.Driver.class);
dataSource.setUrl("jdbc:mysql://localhost:3306/xxx?characterEncoding=UTF-8");
dataSource.setUsername("root");
dataSource.setPassword("root");
// 创建流程引擎配置对象
ProcessEngineConfiguration cfg = ProcessEngineConfiguration
.createStandaloneProcessEngineConfiguration();
// 设置自动更新数据库表结构
cfg.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
// 配置数据源信息
cfg.setDataSource(dataSource);
// 初始化流程引擎
processEngine = cfg.buildProcessEngine();
// 获取 MyBatis 的 Configuration 对象
// String resource =
// "/Users/xxx/Workspace/xxx/xxx-plugin-flow/src/main/resources/activiti.cfg.xml";
// InputStream inputStream = new FileInputStream(resource);
//
// ProcessEngineConfiguration processEngineConfiguration =
// ProcessEngineConfiguration.createProcessEngineConfigurationFromInputStream(inputStream);
// //2:创建 ProcessEngine 对象
// processEngine = processEngineConfiguration.buildProcessEngine();
// while (stopStatus) {
// try {
// Thread.sleep(5000); // 暂停 5 秒钟
// log.info("NameServerController 线程停止 5 秒");
// } catch (InterruptedException e) {
// // 当前线程被中断时会抛出 InterruptedException 异常
// e.printStackTrace();
// }
// }
log.info("NameServerController 线程退出");
} catch (Exception e) {
log.error(e.getMessage());
e.printStackTrace();
}
}
});
nameServerControllerThread.start();
try {
log.info("等待子线程退出");
nameServerControllerThread.join(); // 等待线程执行完毕
log.info("线程退出");
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
错误
2023-05-30 10:53:11.775 | Thread-1093 | ERROR | a.p.f.u.FlowUtils$1:FlowUtils.java(84) | Error while building ibatis SqlSessionFactory: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error registering typeAlias for 'ByteArrayRefTypeHandler'. Cause: java.lang.ClassNotFoundException: Cannot find class: org.activiti.engine.impl.persistence.ByteArrayRefTypeHandler
对流程比较了解的大牛帮忙解决。
1
freeup 2023-05-30 11:47:01 +08:00
看看项目里有咩有 org.activiti.engine.impl.persistence.ByteArrayRefTypeHandler 这个类,如果没有是不是缺少依赖
|
3
coderstory 2023-05-30 12:31:45 +08:00
你的依赖是不是有点问题
这个类是 activiti-engine 里面的 直接 maven 打包看看有没有这个 jar |
4
potatowish 2023-05-30 12:48:46 +08:00 via iPhone
你依赖的问题,我运行了一遍没问题
|
5
zsvc OP |
6
Hyson2023 2023-05-30 15:21:57 +08:00
估计也是 maven 依赖的问题,如果需要手动添加的话可以尝试先删除本地 repository 中的文件,然后手动用这个命令加一下
mvn install:install-file -Dfile=D:\mybatis-3.5.10.jar -DgroupId=org.mybatis -DartifactId=mybatis -Dversion=3.5.10 -Dpackaging=jar |