跳至主要內容

自建项目如何引入第三方jar

holic-x...大约 3 分钟碎片化碎片化

自建项目如何引入第三方jar

1.传统Web项目

方式1:直接导入

​ 将JAR文件放入WEB-INF/lib目录下,服务器在启动时会自动加载这些JAR文件(被包含在web应用的classpath中),让它们可以在Web应用中被使用

方式2:web.xml指定

​ 在web.xml文件中,可以通过<servlet><servlet-class>元素指定类加载路径。但这种方式一般用于指定Web应用中的Servlet和类加载路径,而不是用于引入第三方JAR

方式3:使用Maven或Gradle等构建工具

​ 构建工具可以自动处理依赖,下载所需的JAR文件并将其包含在最终的应用打包中

2.Spring项目

​ Spring框架允许开发者通过多种方式引入第三方库作为依赖。

方式1:Maven或Gradle: 在项目的pom.xmlbuild.gradle文件中添加第三方库的依赖

# Maven的pom.xml示例:
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>2.5.0</version>
    </dependency>
    <!-- 其他依赖 -->
</dependencies>

# Gradle的build.gradle示例:
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web:2.5.0'
    // 其他依赖
}

方式2:Spring Boot Starter

​ Spring Boot提供了一种简化配置的方式,通过创建专门为特定技术或场景配置的"Starter"依赖

​ 参考api-platform中SDK实现和引用

方式3:@Import在配置类上使用@Import注解来导入第三方库的配置类

@Configuration
@Import({ SomeLibraryConfig.class, AnotherLibraryConfig.class })
public class AppConfig {
    // 配置类的其他内容
}

方式4:Java SPI(Service Provider Interface)

​ 对于遵循SPI的第三方库,可以通过在META-INF/services目录下创建相应的文件来注册服务提供者

方式5:项目动态注册Bean(引申spring如何识别第三方的jar,通过动态注册Bean实现)

​ 让Spring识别和管理第三方jar中的类和组件,前提是这些类和组件是通过标准的Spring注入方式声明的

<bean id="myClass" class="com.thirdparty.MyClass">
  <!-- Constructor-args, properties, etc. -->
</bean>
@Configuration
public class AppConfig {
 
    @Bean
    public SomeLibraryBean someLibraryBean() {
        return new SomeLibraryBean();
    }
}

方式6:手动下载和配置

​ 直接从第三方库的官方网站下载jar包,然后通过类路径(classpath)引入

3.Springboot项目中应用外部jar

方式1:手动导入,配置maven引入

(1)将JAR包手动导入到项目中

  • 将JAR包复制到项目的某个目录下(例如lib目录)
  • 在项目的构建工具(如Maven或Gradle)的配置文件中,将JAR包添加为依赖项

(2)配置maven(路径指向要导入的jar)

<dependencies>
    <dependency>
        <groupId>com.example</groupId>
        <artifactId>your-jar-artifact</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/your-jar-file.jar</systemPath>
   </dependency>
</dependencies>

方式2:使用仓库管理工具(如Nexus、Artifactory等)

​ 如果外部JAR包已经在一个仓库管理工具中(如Nexus或Artifactory),可以将其添加到项目的构建工具配置文件中,就像引用其他远程依赖项一样

<repositories>
    <repository>
        <id>your-repository-id</id>
        <url>http://your-repository-url/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.example</groupId>
        <artifactId>your-jar-artifact</artifactId>
        <version>1.0.0</version>
    </dependency>
</dependencies>

方式3:使用本地仓库或远程仓库

<dependencies>
    <dependency>
        <groupId>com.example</groupId>
        <artifactId>your-jar-artifact</artifactId>
        <version>1.0.0</version>
    </dependency>
</dependencies>
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3