ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2022-05-16 01:00:47  阅读:201  来源: 互联网

标签:依赖 项目 Flutter ivy maven dependency 构件 flutter SDK


本文地址


目录

目录

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 的依赖项

标签:依赖,项目,Flutter,ivy,maven,dependency,构件,flutter,SDK
来源: https://www.cnblogs.com/baiqiantao/p/16275441.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有