Closed ochive closed 4 months ago
我再次仔细看了官方文档, 里面提到2.0版本以后, 直接使用springboot的maven打包插件即可.
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<outputDirectory>target</outputDirectory>
<classifier>ark-biz</classifier>
</configuration>
<executions>
<execution>
<id>package</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
打包后得到一个包"project-1.0.0-SNAPSHOT-ark-biz.jar", 以前打包时是生成三个包, "origin.jar", "origin-ark-biz.jar", "origin-ark-executable.jar". 直接使用java -jar运行"ark-biz.jar"包, 可以成功运行了.虽然有报错, 但应该是缺少几个JDK8包造成的.
我还是有一个问题, 文档里提到命令行运行或者IDEA运行都要携带参数:
-Dsofa.ark.embed.enable=true -Dcom.alipay.sofa.ark.master.biz=${bizName}
但我没带参数,似乎也可运行, 请问带参数的作用是什么?
你好,是为了解决合并部署的问题吗?
我再次仔细看了官方文档, 里面提到2.0版本以后, 直接使用springboot的maven打包插件即可.
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <configuration> <outputDirectory>target</outputDirectory> <classifier>ark-biz</classifier> </configuration> <executions> <execution> <id>package</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
打包后得到一个包"project-1.0.0-SNAPSHOT-ark-biz.jar", 以前打包时是生成三个包, "origin.jar", "origin-ark-biz.jar", "origin-ark-executable.jar". 直接使用java -jar运行"ark-biz.jar"包, 可以成功运行了.虽然有报错, 但应该是缺少几个JDK8包造成的.
这个不对吧,是哪里的官网呢?
你好,是这个地址中提到的:"https://www.sofastack.tech/projects/sofa-boot/sofa-ark-migration-guide/".
在SOFAArk1.0中使用sofa-ark-maven-plugin打包,在SOFAArk2.0中采用spring-boot原生打包插件spring-boot-maven-plugin打包
我再次仔细看了官方文档, 里面提到2.0版本以后, 直接使用springboot的maven打包插件即可.
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <configuration> <outputDirectory>target</outputDirectory> <classifier>ark-biz</classifier> </configuration> <executions> <execution> <id>package</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
打包后得到一个包"project-1.0.0-SNAPSHOT-ark-biz.jar", 以前打包时是生成三个包, "origin.jar", "origin-ark-biz.jar", "origin-ark-executable.jar". 直接使用java -jar运行"ark-biz.jar"包, 可以成功运行了.虽然有报错, 但应该是缺少几个JDK8包造成的.
这个不对吧,是哪里的官网呢?
你好,是这个地址中提到的:"https://www.sofastack.tech/projects/sofa-boot/sofa-ark-migration-guide/".
在SOFAArk1.0中使用sofa-ark-maven-plugin打包,在SOFAArk2.0中采用spring-boot原生打包插件spring-boot-maven-plugin打包
我目前已经解决我提到的问题了, 步骤如下:
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-ark-springboot-starter</artifactId> <!-- spring boot 宿主应用的必要依赖-->
<version>${sofa.ark.version}</version>
</dependency>
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-ark-all</artifactId>
<version>${sofa.ark.version}</version>
</dependency>
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-ark-api</artifactId>
<version>${sofa.ark.version}</version>
</dependency>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<outputDirectory>target</outputDirectory>
<classifier>ark-biz</classifier>
</configuration>
<executions>
<execution>
<id>package</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
你是使用多应用合并部署能力吗?不参考下 https://github.com/koupleless/samples 这个吗?这个是使用 SOFAArk 做的模块化研发框架与平台能力。
Hi, 你的问题解决了吗?
@lvjing2 你好,已经解决了, 谢谢! 因为这是一个存量项目, 由于它有大量插件项目(各自依赖各种冲突), 因此使用了ark.我对此项目了解有限, 因此目前能解决多依赖的隔离就可以了.
通过这次问题, 我初次接触了模块隔离技术, 后续开发低代码项目时会优先考虑Sofa的新版本,谢谢!
Describe the question or bug
我的需求是将多个有依赖冲突的子项目打包为ark插件, 引入主项目后使用即可.
如果不使用ARK, 项目运行和打包后运行都是正常的. 目前引入ark将项目的依赖打包为ark plugin, 再将主项目打成ark包, 都是正常的. 直接使用IDEA启动项目(不加任何VM参数), 也可以正常访问.
但是直接运行jar包就报错:
Environment
Pom.xml