专栏首页野路子程序员从已有安装包(vendor)恢复 composer.json

从已有安装包(vendor)恢复 composer.json

拿到的一个项目没有 composer.json,不过 /vendor 目录下是完整存在的。对此我们进行恢复。提供两个方式,都需要通过 /vendor/composer/installed.json 进行恢复。如果不存在则只能手动将所存在的项目逐个取出及对应版本号收集整理。

其一,将上述文件内容所有的包名称及版本号提取出来标准规范写到 composer.json 即可。

其二,创建 composer.json ,运行 composer show --installed ,程序会将其列表出来,也需要收集提取。

匹配正则:

([A-z0-9\/\-\.]+)\s+([A-z0-9\.\-]+)[\S\s]+?\n

替换正则:

"$1":"$2",####

在线正则测试:http://tool.oschina.net/regex/

我们将 composer 返回的内容复制出来,使用正则提取出来并将其替换,最后将其中的 #### 替换为相应的换行符 \r\n ,格式化后将其放置到 composer.json 文件里的 require 或者 require-dev 配置段。

最后,更新。

> composer update
.....
Writing lock file
Generating autoload files

(完)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Ubuntu桌面环境下安装Navicat Premium数据库管理工具 解决破解乱码

    Eller
  • 徒手解剖composer,简单了解其实现过程

    Eller
  • 最近写了一个博客程序: QuickBlog PHP 开源的一文多发系统

    在开始之前也用到了一些其他类似的系统,区别大概就是非开源的商业化产品不安全,无法进行自我数据存储管理。开源的产品部署起来总有一些问题或者有很多自己想实现的点没有...

    Eller
  • 参数化(三):参数嗅探

        在之前的随笔中我提到过参数嗅探,这是非常重要的概念。下面我们深入的研究一下参数嗅探…     首先我们知道批处理可以是参数化的或者非参数化。参数化的批处...

    用户1217611
  • linux学习第五十四篇:配置Tomcat监听80端口,配置Tomcat的虚拟主机,Tomcat日志

    配置Tomcat监听80端口 通过网站访问的是80端口,我们直接输入IP就可以,但是8080端口要输入,而80端口是默认的,可以省略的。所以我们要配置Tomc...

    用户1215343
  • SpringMVC框架复习大纲【面试+提高】

    Java帮帮
  • 医学生信文献第10期:一篇肿瘤领域入门必读综述——新一代癌症标志物

    在人类肿瘤的多 级发展过程 形成的六 个生物功 能构成了癌症的 特征。这些 特征为分析复 杂的肿瘤性疾病 提供了一个 组织原则。这六个 特征包括:持久 的增殖信...

    DoubleHelix
  • 惊讶!听说你的商品数据都放内存!

    假设将CPU比喻为计算机中的"大脑",那存储器就是其附身了,存储空间有限但是非常的快。为了记忆部分数据就出现了CPU Cache,它用的是一种叫做SRAM的芯片...

    我是程序员小贱
  • CVPR 2019:北邮提出新AI模型压缩算法,显著降低计算复杂度

    人工智能在众多计算机视觉领域都取得了很大的成功,然而深度学习(Deep Learning)因其计算复杂度或参数冗余,在一些场景和设备上限制了相应的模型部署,需...

    新智元
  • Leetcode 73 Set Matrix Zeroes

    Given a m x n matrix, if an element is 0, set its entire row and column to 0. D...

    triplebee

扫码关注云+社区

领取腾讯云代金券