npm发布包:

解决方案--npm adduser的坑:http://www.tuicool.com/articles/FZbYve

npm ERR publish 403,nodejs发布包流程 :http://www.cnblogs.com/zhoudaozhang/p/4730070.html

npm发布注意事项:http://m.blog.csdn.net/article/details?id=49018629

因为重定向了npm库的源,所以 npm adduser 时会将用户名和密码提交到 http://registry.npm.taobao.org 去验证,那当然一直报用户名密码不正确啦。所以需要使用nrm将npm源切换到npmjs官网。

快速切换npm源的开源工具--nrm

http://www.cnblogs.com/songqingbo/articles/5611588.html

*为当前项

切换为官方源:

成功:

*编写模块

1)新建文件夹,比如:somepackage

2) 该文件夹下新建js文件,比如:index.js

  js内容如下:

  exports.sayHello=function(){
    return "Hello,world.";
  };

*初始化包描述文件

使用cmd命令定位到npmfabuPackage文件夹

输入 npm init 并执行

npm的init命令可以帮助你生成package.json文件,这是我的文件内容:

{
"name": "hanipack1234567",
"version": "1.0.0",
"description": "npmpackage",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "zuojy",
"license": "ISC",
"repository": {
"type": "git",
"url": "git+https://github.com/happyhani/buildnpmpack.git"
},
"bugs": {
"url": "https://github.com/happyhani/buildnpmpack/issues"
},
"homepage": "https://github.com/happyhani/buildnpmpack#readme"
}

*注册包仓库账号

npm adduser

输入这个命令会有提示输入用户名,密码,邮箱等资料。不能随意填写,第一次使用的时候不知道,随便写了用户名密码邮箱等,会报错。

应该去https://www.npmjs.com/注册一个账号,然后就填写注册账号时填写的用户名、密码和邮箱即可

这和去官方源仓库https://www.npmjs.com/注册是一样的

*上传包

npm publish

如果上传成功会提示  +somepackage_xiaotian@1.0.0 否则上传失败

这个时候去https://www.npmjs.com/登陆仓库账号就可以看到自己的包啦

*安装包

npm install hani1234567

通过此命令可以在世界上任一一台机器上安装hani1234567了。

 这个名字要和其他的不一样,其他人发布过的需要修改名字再发布

发布包过程可能会遇到很多问题,我印象比较深刻的是npm ERR publish 403

You do not have permission to publish 'somepackage'.Are you logged in as

the corrent user?:somepackage

意思是我没权限发布somepackage,并问我是否使用了正确的账号,

那也许是somepackage被别人发布过了吧,所以我修改了package.json文件

把name改成somepackage_xiaotian.

*分析包

这个命令可以为你分析出当前路径下能够通过模块路径找到的所有包,并生成依赖树。

用 npm ls 查看

添加命令行程序:http://www.cnblogs.com/tzyy/p/5196208.html

也就是在安装了自己发布的包了以后,设置指令。但是包需要安装在全局。在局部安装的还没有解决一个问题:他貌似会提示找不到路径。

npm发布包--所遇到的问题的更多相关文章

  1. npm发布包

    一.发布一个新包第一步:进入要发布的项目根目录,初始化为npm包: npm init 依次按提示填入包名.版本.描述.github地址.关键字.license等 这步完成之后会生成一个package. ...

  2. npm发布包的那些事

    npm发包的那些事 最近一直在研习关于node的知识,发布包虽然是最基础的一点,但由于一些地方的不注意很容易发生错误,我整理了我可能出现过的一些发布包的过程中的一些error,现在分享给大家: 正确的 ...

  3. 转发npm发布包的过程

    老板,来个npm账号! 因为你的包是要放在npm上的,所以,没有npm的账号,根本什么活都干不了. 在npm上注册一个账号是很简单的,随便填一下用户名密码邮箱,然后人家就会发个邮件给你,然后就注册成功 ...

  4. npm 发布包

    每个包都必须包含package.json配置文件 生成package.page文件 1.到项目目录下执行npm init根据提示输入即可 最后记得要yes 完成项目后就是要发布到npm了 首先需要有n ...

  5. npm 发布包(publish)

    λ npm init // 建包,信息填写好 λ npm adduser // 创建npm账户 填写账号,密码,邮箱 λ npm whoami // 查看当前登录的是谁 ajanuw 登录 λ npm ...

  6. npm发布包以及更新包还有需要注意的几点问题(这里以发布vue插件为例)

    前言 在此之前,你需要去npm官网注册一个属于自己的账号,记住自己的账户名以及密码.邮箱,后面会用的到.第一步,安装webpack简易框架 vue init webpack-simple marque ...

  7. npm 发布包和删除包(2019最新攻略)

  8. 利用npm安装/删除/发布/更新/撤销发布包 --社会我npm哥,好用话不多

      一.什么是npm? npm是javascript的包管理工具,是前端模块化下的一个标志性产物 简单地地说,就是通过npm下载模块,复用已有的代码,提高工作效率   1.从社区的角度:把针对某一特定 ...

  9. 【npm】利用npm安装/删除/发布/更新/撤销发布包

      什么是npm? npm是javascript的包管理工具,是前端模块化下的一个标志性产物 简单地地说,就是通过npm下载模块,复用已有的代码,提高工作效率   1.从社区的角度:把针对某一特定问题 ...

随机推荐

  1. 文件二进制与String相互转换

    //转换base64 OpenFileDialog dialog = new OpenFileDialog(); //dialog.Filter = "所有文件(*.*)|*.*" ...

  2. Windows Server 2008 R2远程协助选项 灰色

    管理工具——〉服务器管理器——〉功能——〉添加功能   窗口中"远程服务器管理工具"下边的"远程协助"打上对钩"再点击"下一步"再 ...

  3. 用工厂模式解决ASP.NET Core中依赖注入的一个烦恼

    这是最近在实际开发中遇到的一个问题,用 asp.net core 开发一个后端 web api ,根据指定的 key 清除 2 台 memcached 服务器上的缓存.背景是我们在进行 .net co ...

  4. mysql 语句 字段 和结构主键外键的增删改

    primary key 主键  notnull 不为空 unique 唯一       foreign key(外键) references t1(id)        auto_increment ...

  5. update-alternatives符号连接的层数过多

    ls -l /opt/jdk/bin/java时,显示/opt/jdk/bin/java -> /usr/bin/java ls -l /usr/bin/ava时,显示/usr/bin/java ...

  6. Java编程:删除 List 元素的三种正确方法

    删除 List 中的元素会产生两个问题: 删除元素后 List 的元素数量会发生变化: 对 List 进行删除操作可能会产生并发问题: 我们通过代码示例演示正确的删除逻辑 package com.ip ...

  7. shell之awk面试小案例

    [root@chavinking mnt]# cat textfile chavinking 1 2 3 4 5 6 nope 1 2 3 4 5 6 [root@chavinking mnt]# c ...

  8. linux 之awk

    简介 awk是一个强大的文本分析工具,相对grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格 为默认分隔符将每行切片,切开的部分再 ...

  9. Chap5:数字货币交易[《区块链中文词典》维京&甲子]

  10. day3_字符串常用方法

    s.upper()s.lower()s.capitalize()s.split(',')s.strip('abc')s.lstrip()s.rstrip()s.replace('old','new') ...