Flutter篇 (三)发布 package到 Dart

发布package到Dart需要处于不被和谐的上网环境下, 而且需要google账号 ,代表这个package的所有权 , 如果你还没有注册google账号或者无法打破被和谐的环境,可以参考我的另一篇博客 : 搭建谷歌云

既然是要发布package , 就需要先创建一个package项目,前提是你已经配置好了Flutter开发环境 ,打开我们AndroidStudio , 依次点击File / New / New Flutter Project , 这次要选择Flutter Package

然后点击Next填写package的名称和描述信息,最后点击Finish即可

现在我们已经创建了一个package的项目了, 然后将你要打包发布的代码放置在lib目录下,lib下可创建多层级的子包 ,就跟我们开发Flutter项目一样, 不过.dart文件的命名建议全部使用小写格式( 例如: MyFirstApp.dart 建议改成 my_first_app.dart ), 因为发布的时候Dart SDK 会检查我们的代码,有大写的 .dart命名文件会报出警告 , 不过也不影响发布 , 只是一对的满江红,看着不爽

创建完项目后,会自动生成一些文件, 这里我们需要重点关注下三个文件

CHANGELOG.md 是我们要发布的package的版本信息,和当前版本的介绍,这里以我已经发布的一个项目为例

pubspec.yaml定义了我们的个人信息,就是这个package的归属权 , 以及我们的个人信息
name : 发布到 pub.dartlang.org 的package名称
description : package的介绍
version : 当前版本
author : 我们的名字和邮箱
homepage : 我们的个人网站(可以是GitHub或者CSDN...)

LICENSE 既然要开源这个项目,当然还需要一个开源许可

Dart推荐的是BSD的方式 , 如果你懒得去详细了解如何生成BSD格式的许可信息,那么可以直接在GitHub新建一个项目 ,然后选择一个BSD类型的许可就可以了

创建完上面的GitHub项目后,会生成一个LICENSE ,直接拷贝到我们的package中即可

README.md 一些项目的简介,内容按需配置就行

目前为止,准备工作进行的差不多了,是时候发布我们的package了
我这里使用的是AndroidStudio下面的Terminal控制台(其实就是系统的cmd.exe)

执行命令 **flutter packages pub publish --dry-run **
此时Dart会检查我们项目的目录结构以及语法等, 接下来会列出类似于下面的这些信息

D:\WorkerSpace\flutter_chart>flutter packages pub publish --dry-run
Publishing flutter_chart 0.0.1 to https://pub.flutter-io.cn:
|-- .flowconfig
|-- .gitignore
|-- .idea
|   |-- encodings.xml
|   |-- flutter_chart.iml
|   |-- libraries
|   |   |-- Dart_Packages.xml
|   |   |-- Dart_SDK.xml
|   |   '-- Flutter_Plugins.xml
|   |-- misc.xml
|   |-- modules.xml
|   |-- vcs.xml
|   '-- workspace.xml
|-- .metadata
|-- CHANGELOG.md
|-- LICENSE
|-- README.md
|-- android
|   |-- app
|   |   '-- src
|   |       '-- main
|   |           '-- java
|   |               '-- io
|   |                   '-- flutter
|   |                       '-- plugins
|   |                           '-- GeneratedPluginRegistrant.java
|   '-- local.properties
|-- flutter_chart.iml
|-- lib
|   |-- chart
|   |   |-- chart_bean.dart
|   |   |-- painter
|   |   |   |-- base_painter.dart
|   |   |   |-- chart_bar_painter.dart
|   |   |   '-- chart_line_painter.dart
|   |   '-- view
|   |       |-- chart_bar.dart
|   |       '-- chart_line.dart
|   '-- flutter_chart.dart
|-- pubspec.yaml
'-- test
    '-- flutter_chart_test.dart

Package has 0 warnings.

因为我这文件的命名已经按照dart建议的方式的修改过了,所以没有命名格式的警告

接下来就可以发布了
flutter packages pub publish --server=https://pub.dartlang.org

到这一步,如果没错误的话,会提示你要不要继续(y/n) , 输入y后不出意外会在控制台打印出一串链接, 是要我们自己拷贝到浏览器 中,去验证我们的google账号,说白了就是鉴权, 将要发布的这个package关联到我们的google账户下面

看到下面这个界面 代表认证成功了

** 此时控制台会接收到认证信息, 开始发布你的package,出现下面的信息,说明发布成功了**

此时你的google邮箱也会收到package发布成功的邮件

现在试试在pub.dartlang.org搜索刚刚发布成功的package

当然了,这只是理想的情况下,如果你出现了以下情况,基本上可以确定被和谐了

此时你可以在Terminal 输入 curl google.com 测试google是否可以连通,以下是成功返回信息的样本

失败或者超时

如果你的终端超时了,此时就需要配置代理 (前面配置好的ShadowScoks代理ip和端口)

然后重新测试 curl google.com 如果返回信息代表是google是可以连通的,最后重新执行命令 flutter packages pub publish --server=https://pub.dartlang.org即可 , 如果你前面认证成功了,后面是不需要再次认证的,会直接提示发布成功

Good Luck !

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,527评论 5 470
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,314评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,535评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,006评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,961评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,220评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,664评论 3 392
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,351评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,481评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,397评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,443评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,123评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,713评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,801评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,010评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,494评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,075评论 2 341