摘要本文将从以下几个方面介绍Spring Boot框架的jar包部署:打包成可执行的jar包运行jar包常见的jar包部署问题正文首先我们需要将Spring Boot项目打包成可执行的jar包,然后在目标环境下运行这个...打包成可执行的jar包在使用Spring Boot框架的过程中,我们可以使用Maven或Gradle来构建项目。...其中Maven是比较常见的构建工具,本文以Maven为例来介绍如何将Spring Boot项目打包成可执行的jar包。...例如:# 服务端口和上下文配置server: port: 88893. 如何设置应用程序上下文路径在默认情况下,Spring Boot应用程序的上下文路径为空。...使用spring-boot-maven-plugin插件来打包应用程序为可执行的jar包。在命令行中使用java -jar命令来运行jar包。
两者没有一个明确的界限,文档是可执行的,代码也是可执行的。不过,从最终的形态上来说,它们都是知识。所以,重点依旧在于如何将这些知识显式化。所以从原型参考上,我们关注于:可交互环境与文档体验设计。...在构建架构适应度函数时,也可以使用语言库提供的数学功能,以便于定制各类的计算规则。...对于我们来说,有两个选择: Kotlin 语言自带的试验性功能:Kotlin Scripting 提供了一种无需事先编译或打包成可执行文件即可将 Kotlin 代码作为脚本执行的技术。...如添加 ArchGuard DSL 的 jar 包,以及对应的 Kotlin Scripting、Kotlin Jupyter 的 Jar。 添加 % archguard Magic。...配置 Kotlin REPL classpath 如上所述,REPL 在代码中配置的是: val property = System.getProperty("java.class.path")var
/ 将源码打包到 jar 包中 task sources2Jar(type: Jar) { // 指明要打的 jar 包名称 // 最终打包的名称是 plugin-0.1-sources.jar...baseName 'plugin' // 指定分类器 , 与其它 jar 包进行区分 classifier 'sources' // 设置打包哪些文件 // 这里设置的是...main 目录下的所有文件 from sourceSets.main.allSource } // 自定义文档打包任务 // 自定义 Jar 类型的 Gradle 任务 // 将文档打包到...plugin-0.1-doc.jar baseName 'plugin' // 指定分类器 , 与其它 jar 包进行区分 classifier 'doc' // 设置打包哪些文件...} // 配置 工程工件 对应的 jar 包产出 配置 // 这里将 文档打包 和 源码打包 后的 jar 包作为输出 artifacts { archives sources2Jar
Gradle 团队与 Kotlin 团队密切合作,为 Gradle 开发了新的基于 Kotlin 脚本的构建配置语言,我们称之为 Gradle Script Kotlin,支持使用 Kotlin 编写构建和配置文件...有了Gradle Script Kotlin,我们可以使用 Kotlin 来写配置文件,就跟写普通代码一样。...我们使用 kotlin-gradle-plugin 编译 Kotlin 源代码和模块。使用的 Kotlin 版本通常定义为 kotlinVersion 属性。...如果是针对 JDK 7 或 JDK 8,那么可以使用扩展版本的 Kotlin 标准库,其中包含为新版 JDK 增加的额外的扩展函数。...下面我们就来简要介绍一下使用 Kotlin 脚本来编写 Gradle 的配置文件。 我们就以上一章中的 chapter11_kotlin_springboot 工程为例。
文章目录 一、默认生成的 pom 文件 二、Maven 中的 pom 配置 三、自定义 pom 文件节点 Android Plugin DSL Reference 参考文档 : Android Studio.../ 将源码打包到 jar 包中 task sources2Jar(type: Jar) { // 指明要打的 jar 包名称 // 最终打包的名称是 plugin-0.1-sources.jar...baseName 'plugin' // 指定分类器 , 与其它 jar 包进行区分 classifier 'sources' // 设置打包哪些文件 // 这里设置的是...main 目录下的所有文件 from sourceSets.main.allSource } // 自定义文档打包任务 // 自定义 Jar 类型的 Gradle 任务 // 将文档打包到...} // 配置 工程工件 对应的 jar 包产出 配置 // 这里将 文档打包 和 源码打包 后的 jar 包作为输出 artifacts { archives sources2Jar
fileTree(dir: 'libs', includes: ['*.jar']) } 三、在 Java or Kotlin Library 模块中定义插件 ---- 在插件模块中的 src/main...// 配置上传内容 // components.java 是打包的 jar 包 from components.java...// 配置上传内容 // components.java 是打包的 jar 包 from components.java //..., 定义完插件后 , 在 自定义 Gradle 插件模块 的 build.gradle 构建脚本中 , 添加了 插件上传仓库的 配置 , 为插件指定了 分组 , 版本号 , 名称 配置 ; // 指定自定义...// 配置上传内容 // components.java 是打包的 jar 包 from components.java //
: 指明要打的 jar 包名称 , 最终打包的名称是 plugin-0.1-doc.jar ; classifier : 指定分类器 , 与其它 jar 包进行区分 ; from : 设置打包哪些文件...'plugin' // 指定分类器 , 与其它 jar 包进行区分 classifier 'doc' // 设置打包哪些文件 // 这里设置的是 javadoc 和 groovydoc...最终的源码如下 : // 自定义文档打包任务 // 自定义 Jar 类型的 Gradle 任务 // 将文档打包到 jar 包中 task document2Jar(type: Jar, dependsOn...' // 指定分类器 , 与其它 jar 包进行区分 classifier 'doc' // 设置打包哪些文件 // 这里设置的是 javadoc 和 groovydoc...任务 , 最后执行 document2Jar 任务 ; 执行完毕后 , 在该模块的 build/libs 目录 下 , 生成了 plugin-0.1-doc.jar 封装文档的 Jar 包 ;
| 生成文档包 ) 中 , 分别使用 自定义 Jar 类型 Gradle 任务 将 插件源码 和 插件文档 打包到了 jar 包中 ; artifacts 配置 , 是用于配置 工程工件 对应的 jar...包产出 配置 ; // 配置 工程工件 对应的 jar 包产出 配置 // 这里将 文档打包 和 源码打包 后的 jar 包作为输出 artifacts { archives sources2Jar...baseName 'plugin' // 指定分类器 , 与其它 jar 包进行区分 classifier 'sources' // 设置打包哪些文件 // 这里设置的是...main 目录下的所有文件 from sourceSets.main.allSource } // 自定义文档打包任务 // 自定义 Jar 类型的 Gradle 任务 // 将文档打包到...} // 配置 工程工件 对应的 jar 包产出 配置 // 这里将 文档打包 和 源码打包 后的 jar 包作为输出 artifacts { archives sources2Jar
声明:构建多模块不是最难的,难点是如果把多模块打包成一个执行jar。...SpringBoot官方推崇的是富jar,也就是jar文件启动项目,所以如果在这里打war包我不具体介绍,如果需要的朋友可以给我留言,我回复。...--可以把依赖的包都打包到生成的Jar包中--> 的不可执行Jar包--> 的依赖,是否出现这种情况。 二、打包发布jar文件 1.在启动类中修改pom文件(也就是web层的) 的包都打包到生成的Jar包中--> 的不可执行Jar包--> <!
一、使用maven多模块工程的好处 复杂项目拆分成多个模块多模块的划分可以降低代码之间的耦合性,方便维护。 多模块可以根据工程拆分,也可以根据菜单拆分,具体可根据公司要求。...选择需要的模块(这里添加web): ? 1.4创建好的项目结构如下: ? 1.5在最外层pom引入SpringBoot依赖 ? pom.xml依赖: 的不可执行Jar包--> 模块其实不难,如何把它打包成一个执行jar才是难点。 三、如何打包成一个执行jar包。 3.1 在启动类中修改pom文件(也就是web层的) 的不可执行Jar包--> <!
---- 在上一篇博客 【Android Gradle 插件】自定义 Gradle 插件模块 ② ( 在模块中定义插件 | 引入自定义 Gradle 插件模块 | 配置 Gradle 插件上传选项 |...配置分组名称版本号 ) 中 , 定义完插件后 , 在 自定义 Gradle 插件模块 的 build.gradle 构建脚本中 , 添加了 插件上传仓库的 配置 , 为插件指定了 分组 , 版本号 ,...plugin(MavenPublication) { // 配置上传内容 // components.java 是打包的 jar 包...生成 Pom 文件 , 该文件是 Maven 仓库的描述文件 ; publishPluginPublicationToMavenLocal 任务的作用是将 Gradle 插件 上传到本地 Maven...仓库中 ; 二、Windows 本地 Maven 仓库地址 ---- 在 Windows 系统中 , 本地仓库的目录为 " C:\Users\用户名.m2\repository " ; 在我的电脑上
在创建完您的多个模块并将它们关联起来之后,您可以使用以下Maven命令打包所有模块: mvn clean package 此命令将在每个模块中生成一个单独的JAR文件,您可以将其分发或部署到服务器上。...如果您不希望在每个模块中生成单独的JAR文件,则可以在父pom.xml文件中更改打包类型: pom 这样,只会生成一个JAR文件,其中包含所有模块。...模块的控制层代码,application.properties为API模块的配置文件,UserControllerTest.java为API模块的测试代码。.../target/my-project-web-1.0.0-SNAPSHOT.jar为打包后的可执行jar包路径。...可以使用聚合父项目来一次性编译、打包和运行所有子项目。 部署 在所有子项目成功运行和测试后,使用构建工具将各个子项目打成可执行的jar或war包或者直接部署在应用服务器上。
二、GradleGradle是一款基于Groovy语言的构建工具,可以处理Java、Scala、Kotlin等多种语言的项目。...Gradle的核心概念包括项目、任务、依赖、插件和仓库等。下面以一个简单的Java项目为例,介绍如何使用Gradle进行构建和管理。...my-app的项目,并生成默认的build.gradle文件和源代码结构。...配置依赖打开build.gradle文件,可以看到默认的依赖如下:dependencies { implementation 'com.google.guava:guava:30.1.1-jre'.../gradlew build这个命令会将项目打包成jar包或war包,并将依赖一同打包进去。如果有测试用例,还会执行测试并生成测试报告。
文章目录 一、在 Java or Kotlin Library 模块中定义插件 二、引入自定义 Gradle 插件模块 三、配置自定义 Gradle 插件上传选项 四、配置 Group 分组、插件名称、...publications 脚本块 中为插件传入参数 ; 注意 : publications 中的 plugin 函数是任意命名的 ; // 发布到 远程/本地仓库 相关配置 publishing {...// components.java 是打包的 jar 包 from components.java } } } 在 Android...// 配置上传内容 // components.java 是打包的 jar 包 from components.java...// 配置上传内容 // components.java 是打包的 jar 包 from components.java //
项目 & 任务 Gradle 的一切都是基于项目和任务的。 构建由一个或多个项目组成。项目的概念很抽象,它取决于你要用Gradle 做什么 。项目可以是 一个 Jar 库或者一个 web 程序。...也可以是一个 zip 压缩包,也可以是将项目部署到生产环境等等; 一个项目是由一个或多个任务组成的;任务是构建工作的原子单位,最小的工作单元。例如:编译字节码,创建 jar 。...使用 --dsl kotlin gradle init --dsl kotlin ?...构建的Gradle设置脚本 创建任务 Gradle提供了通过Groovy或基于kotlin的DSL创建和配置任务的api。...Gradle提供了一个任务库,我们可以在自己的项目中配置这些任务。例如,有一个核心类型的 Copy 任务,它可以复制文件。 下面我们就配置这个 任务来使用一下。
如果要将项目配置为使用 Gradle,您需要在项目文件夹中添加 build.gradle 文件。...无论当前的 Android 项目是应用还是依赖库,Android Gradle 插件都知道如何对其进行构建和打包。...典型的 Android 项目会包含一个顶层 Gradle 构建文件。Android 项目中的每个模块又分别有一个 Gradle 构建文件。在示例项目中,我仅有一个应用模块。...Gradle DSL 支持使用 Groovy 与 Kotlin 脚本编写构建文件。到目前为止,我都在使用 Groovy DSL 脚本来配置此工程的构建。...您可以在下面看到分别由 Kotlin 和 Groovy 编写的相同构建文件。注意 Kotlin 脚本文件名后缀为 ".kts"。
让我们一起系统地总结下如何打成可执行 jar 包,另外也分享一下企业经常用的打包方式。...一、打成可执行jar包 如果你的项目工程,不能制作为可执行 jar 包,即执行 java -jar xxx.jar 报错,可以尝试下我的 pom 配置。...在mvn package之后,再次打包可执行的jar/war,同时保留mvn package生成的jar/war为.origin --> 的管理 打出来的可执行 jar 包,目录结构为: ?...四、总结 1、如果需要打成可执行 jar 包的话,可以使用 spring boot 的打包插件:spring-boot-maven-plugin 。
每个任务执行一个具体的动作,如编译代码、运行测试、打包文件等。任务可以有依赖关系,即一个任务的执行需要等待其他任务完成。 2....构建脚本 (Build Script) build.gradle:这是一个Groovy DSL文件,用于定义项目的构建配置和任务。...build.gradle.kts:这是一个使用Kotlin DSL的构建脚本,提供了与Groovy DSL类似的功能,但更适合Kotlin开发者。 3....配置build.gradle文件 以下是一个简单的build.gradle文件示例,展示了如何配置项目的基本信息和依赖项: plugins { id 'java' } group 'com.example...Gradle的优势与最佳实践 灵活性和可扩展性 Gradle允许你使用Groovy或Kotlin DSL进行配置,这使得它非常灵活。你可以根据项目的需要定义自定义任务、配置和插件。
Ktor 介绍 Ktor 是一个高性能的、基于 Kotlin 的 Web 开发框架,支持 Kotlin Coroutines、DSL 等特性。...配置文件 作为 Web 服务器中的 Servlet 在测试中使用 withTestApplication 来启动 Ktor 应用 2.1 Gradle 配置 Ktor Kotlin 的版本需要 1.3...Routing 是一项安装在应用程序中的功能,用于简化和构建页面请求处理。Ktor 的 Routing 支持 Restful 的各种方法,以及使用 DSL 进行配置。...我们以 fat jar 为例,使用 gradle 的 shadow 插件可以方便地打包 Ktor 的应用。...module 中添加 shadow 插件和输出 jar 包名称以及 jar 包的入口 Main 函数: plugins { id 'java' id 'kotlin' id '
includeDirs "src/c" // C 头文件目录,可以传入多个 } } konanInterop 主要用来配置 Kotlin 调用 C 的接口。...功能说明 defFile 互操作映射关系配置文件 pkg C 头文件编译后映射为 Kotlin 的包名 target 编译目标平台:linux/macbook/iphone/iphone_sim等 compilerOpts...,可以传入多个 } } 关于这个配置文件的解析原理可以参考 KonanPlugin.kt 文件的源码(https://github.com/JetBrains/kotlin-native/blob...关于'src/c/cn_kotlinor.bc'文件的编译生成我们在下面讲。 (5) 处的target 配置的是编译的目标平台,这里我们配置为 'macbook' 。...我们可以看出,在Mac OS上,我们可以使用 Kotlin Native 编译android_arm32、android_arm64、iphone、macbook等目标平台的机器码可执行的程序。
领取专属 10元无门槛券
手把手带您无忧上云