把自己的代码发布到npm(npm publish)
写了代码如何发布到npm包?
示例
1.注册npm账号
在npm官网注册https://www.npmjs.com/
注意邮箱要验证,会发送验证链接到你的注册邮箱,没有验证的话是不能发布代码的
2.给你的代码库起个名字
名字不能重复,在官网查询下是不是重复,重复的包名不能提交
3.创建项目
需要一个package.json文件,这个文件不仅仅是用来标明依赖和npm script脚本,也可以是一个npm包被外界识别的配置文件。
因为配置文件内容比较多,可以选择自己手写,或者
npm init
根据提示写好你的信息,以我的为例:name包名和main/bin对应你的包的入口文件,这里我的代码和github一起管理,author注意不要写错和你的npm账号一致
{
"name": "calamus-vue-music",
"version": "0.0.2",
"description": "a vue music player",
"main": "music.vue",
"bin": "music.vue",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git+https://github.com/calamus0427/calamus-vue-music.git"
},
"keywords": [
"music",
"player",
"vue",
"calamus"
],
"author": "calamus",
"license": "MIT",
"bugs": {
"url": "https://github.com/calamus0427/calamus-vue-music/issues"
},
"homepage": "https://github.com/calamus0427/calamus-vue-music#readme",
"_from": "calamus-vue-music@0.0.1"
}
4.本地测试
npm pack
会生成一个 tgz版本文件
打开一个新的项目,路径为刚刚生成的路径
npm install 路径/文件-1.0.0.tgz
5.提交发布
先登录你的账号
$ npm adduser Username: your name Password: your password Email: yourmail
按照你注册的账号配置好,这时候看一下package.json中author尽量与npm账户一致。
在根目录下配置账号信息,只用配置一次即可,我上传的时候发现有提示必须admin权限才能上传问题就是没在根目录下配置信息
检查是否登录成功
npm who am i
# 如果不成功则重新登录一下
npm login
配置成功之后提交代码
npm publish
如果提交成功会出现如下提示:
注意每次提交版本号都要比上次的高
5.测试是否提交成功
去官网你的账号下面看一下有没有
或者直接npm下载下来
npm install calamus-vue-music --save
一些常见的错误:
- 1.no_perms Private mode enable, only admin can publish this module
这是因为镜像设置成淘宝镜像了,设置回来即可
npm config set registry http://registry.npmjs.org
2.npm publish failed put 500 unexpected status code 401
一般是没有登录,重新登录一下 npm login 即可3.npm ERR! you do not have permission to publish “your module name”. Are you logged in as the correct user?
包名被占用,改个包名即可。最好在官网查一下是否有包名被占用,之后再重命名4.you must verify your email before publishing a new package
邮箱未验证,去官网验证一下邮箱
把自己的代码发布到npm(npm publish)的更多相关文章
- 发布自己的npm组件库
发布自己的npm组件库 前期准备 **git上建立自己的仓库,这样子是为了在本地初始化时,可以直接生成对应的 package.json ** 克隆仓库 创建仓库成功后,gitbush本地,执行 git ...
- npm ERR publish 403,nodejs发布包流程
nodejs学习体验之发布包,发布环境如下:1:win10系统,2:已安装nodejs. 具体操作步骤如下: *编写模块 1)新建文件夹,比如:somepackage 2) 该文件夹下新建js文件,比 ...
- 【运维工具】Git代码发布系统
引言 代码发布系统是互联网公司必备的运维系统,作用主要用户发布业务代码 到 业务服务器 为什么需要代码发布系统 有的同学可能说,我们公司服务器就那么一台,做个发布系统太麻烦了? 不认同这说法 发布系统 ...
- jenkins配置记录(2)--代码发布流程
在我们的日常运维工作中,使用jenkins来完成业务代码发版上线是至关重要的一环.前面已经提到在jenkins上添加用户权限的操作,今天重点说下如何在jenkins下构建项目工程进行代码发布? 在此简 ...
- BAE3.0上的java+tomcat代码发布
---------------------------------2016/01/25更新-------------------------------------- 最近两天去百度开放云,发现它再也 ...
- facebook代码发布
facebook代码发布 2011-08-09 20:34:02 分类: LINUX 所有提交的代码每周二打包一次. 只要多一分努力,终于一天会发生改变. 星期二的代码发布,需要所有的提交过代码的工 ...
- 如何将Azure DevOps中的代码发布到Azure App Service中
标题:如何将Azure DevOps中的代码发布到Azure App Service中 作者:Lamond Lu 背景 最近做了几个项目一直在用Azure DevOps和Azure App Servi ...
- Walle,一个开源的web代码发布管理系统
前言 Walle 一个web部署系统工具,可能也是个持续发布工具,配置简单.功能完善.界面流畅.开箱即用!支持git.svn版本管理,支持各种web代码发布,静态的HTML,动态PHP,需要编译的JA ...
- Walle代码发布
一.概述 Walle 一个web部署系统工具,配置简单.功能完善.界面流畅.开箱即用!支持git.svn版本管理,支持各种web代码发布,PHP,Python,JAVA等代码的发布.回滚,可以通过we ...
- Walle代码发布系统
Walle 一个web部署系统工具,配置简单.功能完善.界面流畅.开箱即用!支持git.svn版本管理,支持各种web代码发布,PHP,Python,JAVA等代码的发布.回滚,可以通过web来一键完 ...
随机推荐
- LOJ 2553 「CTSC2018」暴力写挂——边分治+虚树
题目:https://loj.ac/problem/2553 第一棵树上的贡献就是链并,转化成 ( dep[ x ] + dep[ y ] + dis( x, y ) ) / 2 ,就可以在第一棵树上 ...
- Linux 命令自动补齐快捷键
Linux 命令自动补齐快捷键 : TAB
- TCP加速锐速SS(ServerSpeeder)破解版一键安装
速(serverspeeder),是一款TCP加速程序,能够增强VPS/服务器连接的稳定性,且有效的提高服务器的带宽利用率,进而提高访问速度.老左经常看到论坛.群里有用户提到锐速这款软件可以提高VPS ...
- [转]Scrapy简单入门及实例讲解
Scrapy简单入门及实例讲解 中文文档: http://scrapy-chs.readthedocs.io/zh_CN/0.24/ Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用 ...
- msp430及stm32中基本的C编程知识
为什么我使用P1OUT ^= 0x01;和P1OUT = 0x01 ^是异或计算符号 所以 每次运算都是反转的.而不不加这个运算符就是一直保持1的状态. p1out|=bit6的意思p1out的值如果 ...
- ipconfig/all详解
Ipconfig/all(win+R-->cmd-->ipconfig/all)最常用的就是显示自己主机的ip了,可以让我们了解自己的计算机是否成功的租用到一个IP地址.但是ipconfi ...
- 黄聪:利用ImageMagicK给图片加水印
1 图片水印处理 假设把名为logo.gif的水印图标添加在原始图片(src.jpg)右下角,且水印的下边缘距原始图片10像素.右边缘距原始图片5像素.使用如下命令即可: convert src.jp ...
- 2017上海C++面试
今天参加了一次面试,觉得比较有意思,收获蛮多,简单的在这里总结下. 开始做了一道算法题,也就是算术运算表达式中的左括号和右括号的匹配,用c++写.我大概10分钟就写完了.其实以前一直想实现这个功能的, ...
- Spring-boot+Spring-batch+hibernate+Quartz简单批量读文件写数据用例
本文程序集成了Spring-boot.Spring-batch.Spring-data-jpa.hibernate.Quartz.H2等.完整代码在Github上共享,地址https://github ...
- scala 基本类型和操作
Scala基本类型 Scala中的基本数据类型如下图: (来源:Programming in scala) 从上表中可以看出,Scala的基本数据类型与Java中的基本数据类型是一一对应的,不同的是 ...