• Flutter SDK 的依赖关系 maven dependency pom aar ivy


    本文地址


    目录

    Flutter SDK 的依赖关系

    Flutter 的依赖配置文件

    Flutter 的依赖配置文件为:.android/Flutter/build/ivy.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <ivy-module version="2.0" xmlns:m="http://ant.apache.org/ivy/maven">
      <info organisation="com.bqt.flutter.qt_flutter_module" module="flutter" revision="1.0" status="integration" publication="20220515140153"/>
      <configurations>
        <conf name="releaseApi" visibility="private" extends="releaseCompile"/>
        <conf name="releaseCompile" visibility="private"/>
      </configurations>
      <publications>
        <artifact name="flutter-release" type="aar" ext="aar" conf="releaseAllApiPublication,releaseAllRuntimePublication" m:classifier="release"/>
        <artifact name="flutter-release" type="aar" ext="aar" conf="releaseApiPublication,releaseRuntimePublication"/>
      </publications>
      <dependencies>
        <dependency org="io.flutter" name="flutter_embedding_release" rev="1.0.0-d1b9a6938ad77326ac3a94d92bbc77933ed829ed" conf="releaseApi-&gt;default"/>
      </dependencies>
    </ivy-module>
    
    • vy-module:根标签
    • version:定义此文件使用的 ivy 的版本
    • info:定义自己的组织信息和模块的名称
    • dependencies:定义具体的依赖信息
      • 使用 org(组织信息)、name(模块名称) 和 rev(模块版本) 来唯一标识依赖项
      • Ivy 默认使用 maven2 仓库,所以我们可以去 mvnrepository 找到我们需要的模块信息
      • conf 属性用来:Describes a configuration mapping for a dependency
      • &gt;> 的转义字符,-> 用来表示:the name of the dependency configuration mapped
      • 比如 conf="releaseApi->default" 代表是以 releaseApi 的方式集成 flutter_embedding_release

    重点关注 flutter_embedding_release-1.0.0-d1b9a6938ad77326ac3a94d92bbc77933ed829ed

    Flutter_SDK 的 POM 文件

    Flutter_SDK 的 POM 文件位置:.android/Flutter/build/poms/pom-default.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
    		xmlns = "http://maven.apache.org/POM/4.0.0"
    		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>
    	<groupId>com.bqt.flutter.qt_flutter_module</groupId>
    	<artifactId>flutter_release</artifactId>
    	<version>1.0</version>
    	<packaging>aar</packaging>
    	<dependencies>
    		<dependency>
    			<groupId>io.flutter</groupId>
    			<artifactId>flutter_embedding_release</artifactId>
    			<version>1.0.0-d1b9a6938ad77326ac3a94d92bbc77933ed829ed</version>
    			<scope>compile</scope>
    		</dependency>
    	</dependencies>
    </project>
    
    • project:工程的根标签
    • modelVersion:声明项目描述符遵循哪一个 POM 模型版本
    • packaging:项目产生的构件类型,例如 jar、aar、pom
    • dependencies:描述项目相关的所有依赖,它们自动从项目定义的仓库中下载
    • groupId:必需,项目的全球唯一标识符
      • 它在一个组织或者项目中通常是唯一的,通常使用全限定的包名区分该项目和其他项目
      • 构建时生成的路径也是由此生成,如 com.bqt.test 生成的相对路径为:/com/bqt/test/
    • artifactId:必需,构件的标识符,通常是构件的名称
      • 一个 groupId 下面可能多个项目,但每个项目的 artifactId 也必须是唯一的
      • artifactId 和 groupId 一起唯一标识一个构件,同样也一起定义了 artifact 在仓库中的位置
      • 构件是项目产生的或使用的一个东西,Maven 为项目产生的构件包括:JARs、aar、二进制发布等
    • version:必需,项目的版本号
      • 在 artifact 的仓库中,它用来区分不同的版本
      • 格式为:主版本.次版本.增量版本-限定版本号
    • scope:依赖范围,在项目发布过程中,帮助决定哪些构件被包括进来
      • compile:默认范围,用于编译
      • provided:类似于编译,但支持你期待 jdk 或者容器提供,类似于 classpath
      • runtime: 在执行时需要使用
      • test: 用于 test 任务时使用
      • system: 需要外在提供相应的元素。通过 systemPath 来取得
      • systemPath: 仅用于范围为 system。提供相应的路径
      • optional: 当项目自身被依赖时,标注依赖是否传递。用于连续依赖时使用

    如何更改 Flutter 的依赖项

  • 相关阅读:
    Truck History POJ
    Constructing Roads POJ
    Building a Space Station POJ
    Networking POJ
    Jungle Roads POJ
    How Many Answers Are Wrong HDU
    harbor磁盘爆满,执行垃圾回收清理镜像
    阿里云服务器安装mysql镜像
    jenkins Publish over SSH 的配置与使用
    npm install报错 SyntaxError: Unexpected end of JSON input while parsing near '...=GmVg -----END PGP'
  • 原文地址:https://www.cnblogs.com/baiqiantao/p/16275441.html
Copyright © 2020-2023  润新知