Red de conocimiento del abogados - Bufete de abogados - Desarrollo de Flutter: gestión de paquetes Pub

Desarrollo de Flutter: gestión de paquetes Pub

En el desarrollo nativo, Android usa Gradle para administrar dependencias, iOS usa Cocoapods para administrar dependencias y Node usa npm para administrar dependencias. Flutter usa el archivo de configuración pubspec.yaml (ubicado en el directorio raíz del proyecto) para administrar paquetes de dependencia de terceros.

Pub es el almacén oficial de paquetes Dart de Google, similar al almacén npm en node y jcenter en Android. Podemos encontrar los paquetes y complementos que necesitamos en él, y también podemos publicar nuestros paquetes y complementos. para publicar.

La herramienta Pub contiene comandos para administrar paquetes, implementar paquetes e implementar aplicaciones de línea de comandos.

Si estás usando Flutter SDK, no uses el comando pub directamente. En su lugar, utilice el comando flutter pub, de la siguiente manera:

El comando pub get/upgrade/outdated pertenece al paquete de gestión de dependencias

Se utiliza para recuperar otros paquetes que el paquete actual depende de. Si el archivo pubspec.lock ya existe, las dependencias correspondientes se obtienen en función de la versión de dependencia guardada en el archivo. El archivo se creará o actualizará si es necesario.

Actualizar las dependencias del paquete

Cuando ejecutas flutter pub get por primera vez después de agregar un paquete, Flutter guardará la versión específica del paquete que se encuentra en el archivo de bloqueo pubspec.lock. Esto garantizará que cuando usted u otros desarrolladores de su equipo ejecuten flutter pub obtengan la misma versión del paquete.

Si desea actualizar a la última versión del paquete, como utilizar las funciones más recientes del paquete, ejecute la actualización de flutter pub. Esto recuperará la versión más alta disponible permitida por las restricciones de versión que especificó en su archivo pubspec.yaml.

Caso

Importe el paquete hive en el proyecto flutter y agregue la configuración en el archivo pubspec.yaml:

Para ejecutar flutter pub get, puede hacer en pubspec.lock Verá que la versión de Hive es 2.1.0. Esto se debe a que la última versión de Hive es 2.1.0. Configurar "^" significa compatibilidad con la última versión. Para obtener más información, puede ver Administración de versiones de paquetes (. /tools/pub/versioning), así que ejecútelo nuevamente. La actualización de Flutter pub puede ver que la versión todavía es 2.1.0. En este momento, encontrará que pub get y pub update tienen el mismo efecto.

Pero si Hive lanza la versión 2.2.0 en el futuro, puedes usar flutter pub para ver en pubspec.lock que la versión de Hive sigue siendo 2.1.0 y, después de ejecutar la actualización de flutter pub, podrás ver en pubspec.lock Vi que la versión de Hive es 2.2.0.

Ahora agregue la configuración al archivo pubspec.yaml del proyecto flutter, especificando que la versión de Hive es 2.0.5, de la siguiente manera:

Después de ejecutar flutter pub get en este momento, puede agregar la configuración en pubspec.lock La versión de colmena es 2.0.5 en el archivo. Si cambia la configuración a colmena en este momento: ^ 2.0.5 y luego ejecuta flutter pub get, encontrará que la versión de colmena. todavía es 2.0.5 en el archivo pubspec.lock. Puede ejecutar flutter pub obsoleto para ver cada paquete dependiente, como se muestra a continuación.

Puede ver que el número de versión de la colmena del elemento actualizable es 2.1. .0 Después de ejecutar la actualización de flutter pub, puede ver que en pubspec.lock Se ve en el archivo que la versión de Hive es 2.1.0

Agregue configuración al archivo pubspec.yaml:

La información de lxx_package_demo se muestra a continuación:

Después de ejecutar flutter pub get, en pubspec.lock, vemos que la versión de flutter_log es 0.0.1

Ahora modifique el lxx_package_demo número de versión a 0.0.2, y luego ejecute flutter pub get

Encontrará que la versión se actualizará a 0.0 a tiempo 2. El efecto de ejecutar flutter pub get/upgrade en este momento es. lo mismo

Documento de referencia:

blogs.com/lulushen/p/14150544.html