Files
supervision-test-repo/jeecg-boot-platform/jeecg-boot-module-bpm-flowable/pom.xml
T

249 lines
11 KiB
XML

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>jeecg-boot-module-bpm-flowable</artifactId>
<parent>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-platform</artifactId>
<version>${jeecgProjectVersion}</version>
</parent>
<description>此模块属于商业功能范畴,需要购买商业授权才可使用,禁止盗卖、泄露、传播商业源码和商业资料,双方签订合同有保密协议,违者收回商业授权,并追究法律责任</description>
<url>http://www.jeecg.com</url>
<licenses>
<license>
<name>商业授权说明:商业版本只针对企业用户授权,提供更专业更强大的商业版本</name>
<url>http://jeecg.com/vip</url>
<distribution>禁止盗版买卖,违者必究,举报邮箱: jeecgos@163.com</distribution>
<comments>Copyright:北京国炬信息技术有限公司</comments>
</license>
</licenses>
<developers>
<developer>
<name>北京国炬信息技术有限公司</name>
<email>jeecgos@163.com</email>
</developer>
<developer>
<name>授权对象(合作企业): 中国船舶集团有限公司第七〇四研究所</name>
<email>授权范围:贵司通过商业合作,获得商业产品的使用权,但商业版源码、资料禁止传播、盗卖,违者必究!!!</email>
</developer>
</developers>
<scm>
<connection>http://www.jeecg.com</connection>
<developerConnection>http://www.guojusoft.com</developerConnection>
<url>http://www.jeecg.com/vip</url>
</scm>
<properties>
<flowable.version>6.8.0</flowable.version>
</properties>
<dependencies>
<!-- jeecg system api -->
<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-system-local-api</artifactId>
</dependency>
<!--flowable 核心依赖-->
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-spring-boot-starter-process</artifactId>
<version>${flowable.version}</version>
<exclusions>
<!-- 排除mybatis依赖,跟mybatis-plus冲突 -->
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--flowable 用户分组自定义配置依赖 -->
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-idm-spring</artifactId>
<version>${flowable.version}</version>
<exclusions>
<!-- 排除mybatis依赖,跟mybatis-plus冲突 -->
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Flowable报错:Can't find scripting engine for 'javascript', 从Java15开始,JDK移除了内置的Nashorn JavaScript引擎 -->
<dependency>
<groupId>org.openjdk.nashorn</groupId>
<artifactId>nashorn-core</artifactId>
<version>15.4</version>
</dependency>
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-idm-spring-configurator</artifactId>
<version>${flowable.version}</version>
<exclusions>
<!-- 排除mybatis依赖,跟mybatis-plus冲突 -->
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--flowable json转换依赖-->
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-json-converter</artifactId>
<version>${flowable.version}</version>
</dependency>
<!-- flowable6.4以上添加这个依赖,用于解决流程图预览,发布报错问题-->
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.12.2</version>
<optional>true</optional>
</dependency>
<!--flowable 排版布局-->
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-bpmn-layout</artifactId>
<version>${flowable.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-langs</artifactId>
<version>${commons-langs.version}</version>
</dependency>
<!-- jsoup -->
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>${jsoup.version}</version>
</dependency>
<!-- dom4j -->
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<exclusions>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Jsp版流程设计器
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>conmons-des</artifactId>
<version>1.7.41</version>
</dependency>
&lt;!&ndash; Jsp引擎支持 &ndash;&gt;
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>-->
<!-- Jsp版流程设计器 -->
</dependencies>
<build>
<plugins>
<!-- ProGuard混淆插件-->
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>2.6.0</version>
<executions>
<execution>
<!-- 打包的时候开始混淆-->
<phase>package</phase>
<goals><goal>proguard</goal></goals>
</execution>
</executions>
<configuration>
<skip>true</skip>
<putLibraryJarsInTempDir>true</putLibraryJarsInTempDir>
<!--指定混淆的jar,如springboot打出来的jar基于它混淆-->
<injar>${project.build.finalName}.jar</injar>
<!--输出的jar-->
<outjar>${project.build.finalName}-pg.jar</outjar>
<!-- 是否混淆-->
<obfuscate>true</obfuscate>
<options>
<option>-target ${java.version}</option> <!--指定java版本号-->
<option>-keepdirectories</option> <!-- 保持目录结构,否则会导致spring自动装配失败 -->
<option>-dontshrink</option> <!--默认开启,不做收缩(删除注释、未被引用代码)-->
<option>-dontoptimize</option><!--默认是开启的,这里关闭字节码级别的优化-->
<option>-adaptclassstrings</option><!--混淆类名之后,对使用Class.forName('className')之类的地方进行相应替代-->
<option>-ignorewarnings</option><!-- 忽略warn消息,如果提示org.apache.http.* 这个包里的类有问题,那么就加入下述代码:-keep class org.apache.http.** { *; } -dontwarn org.apache.http.**-->
<option>-keep class org.apache.logging.log4j.util.* { *; }</option>
<option>-dontwarn org.apache.logging.log4j.util.**</option>
<option>-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod</option><!--对异常、注解信息在runtime予以保留,不然影响springboot启动-->
<!--不混淆所有interface接口-->
<option>-keepnames interface org.jeecg.modules.**.service.* { *; }</option>
<option>-keepnames interface org.jeecg.modules.**.mapper.* { *; }</option>
<!--<option>-keepclassmembers enum * { *; }</option>保留枚举成员及方法-->
<option>-keepparameternames</option>
<option>-keepclasseswithmembers public class * {
public static void main(java.lang.String[]);}</option> <!--保留main方法的类及其方法名-->
<!--忽略note消息,如果提示javax.annotation有问题,那麽就加入以下代码-->
<option>-dontnote javax.annotation.**</option>
<option>-dontnote sun.applet.**</option>
<option>-dontnote sun.tools.jar.**</option>
<option>-dontnote org.apache.commons.logging.**</option>
<option>-dontnote javax.inject.**</option>
<option>-dontnote org.aopalliance.intercept.**</option>
<option>-dontnote org.aopalliance.aop.**</option>
<option>-dontnote org.apache.logging.log4j.**</option>
<option>-dontnote module-info</option>
<!-- <option>-keep class * implements java.io.Serializable </option>-->
<option>-keep class org.jeecg.modules.extbpm.process.service.impl.FlowUtilService {*;}</option>
<option>-keep class org.jeecg.modules.aspect.SysUserAspect {*;}</option>
<option>-keep class org.jeecg.modules.aspect.SynFlowUserPrincipalDataInterceptor {*;}</option>
<option>-keep class org.jeecg.modules.bpm.util.JoaUtil {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.process.common.CodeUtil {*** getUUIDNum(...);}</option>
<option>-keep class org.jeecg.modules.bpm.config.ProcessEngineConfig {*** configure(...);}</option>
<option>-keep class org.jeecg.modules.extbpm.process.service.impl.n {*** pointCut(...);}</option>
<!-- 这个注意JOA项目把这个类拷贝到对应目录 <option>-keep class org.jeecg.modules.extbpm.process.common.WorkFlowGlobals {*;}</option> -->
<option>-keep class org.jeecg.modules.bpm.dto.** {*;}</option>
<option>-keep class org.jeecg.modules.bpm.cmd.dto.** {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.process.pojo.** {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.process.common.expression.FlowNodeExpression {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.service.ProcessUtils {*;}</option>
<option>-keep class org.jeecg.modules.bpm.cmd.CustomTimeStartJobCmd {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.process.service.impl.BpmBaseExtApiImpl</option>
<option>-keep class org.jeecg.modules.bpm.job.CustomTimeStartJobEventHandler {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.process.entity.** {*;}</option>
<option>-keep class org.jeecgframework.designer.vo.** {*;}</option>
<option>-keep class org.jeecg.modules.extbpm.job.UserAgentJob</option>
<option>-keep class org.jeecg.modules.extbpm.job.TimeOutTask</option>
<!-- 不混淆所有的set/get方法 -->
<option>-keepclassmembers public class * {void set*(***);***
get*();}</option>
<option>-keep class org.jeecg.modules.extbpm.listener.** { *; }</option>
<option>-keep class org.jeecg.modules.extbpm.process.service.IExtActProcessService {*** startMutilProcessApi(...);}</option>
<option>-keepclassmembers class * {
@org.springframework.beans.factory.annotation.Autowired *;
@org.springframework.beans.factory.annotation.Value *;
}
</option>
</options>
<libs>
<lib>${java.home}/</lib>
</libs>
</configuration>
</plugin>
</plugins>
</build>
</project>