Paket在Linux下使用

环境部署

Linux系统:Debian10

包管理服务器:ProGet

首先,在Debian10上安装mono,安装步骤:https://www.mono-project.com/download/stable/#download-lin-debian

其次,下载Paket发布版本,地址为:https://github.com/fsprojects/Paket/releases

然后,将paket.exe拷贝到/usr/local/bin目录下,然后就可以使用paket.exe进行拉包、打包。

Paket使用

下面讲述一种简单的使用示例,详细介绍参加:https://fsprojects.github.io/Paket/learn-how-to-use-paket.html

通常情况下,在一个工程的根目录需要五个Paket相关的文件:

- paket.dependencies
- paket.lock
- paket.template
- paketpull.sh
- paketpush.sh

paket.dependencies

该文件记录当前工程依赖的库文件,如下示例

source http://127.0.0.1:8624/nuget/test/
nuget libbase00 = 1.0.0

paket.lock

当拉取依赖库后,当前工程的依赖库及版本都会记录到该文件中;当依赖库版本有变更时,下次拉取依赖库,会更新该文件中的记录。

该文件可以一直为空,也可以保留自动记录的依赖库及版本。

paket.template

该文件记录打包的模板,如下示例

type file
id libbase10
version 1.0.0
authors xxxx
description
  base library
files
  *.h ==> include
  *.h ==> src
  *.cpp ==> src
  libbase10.a ==> lib
dependencies
  libbase00 = LOCKEDVERSION

其中,files表示要打包的文件,左边为本地文件路径,右边为打包文件的相对路径,如果放在打包文件的根目录,可以写为空或“.”。

dependencies表示当前工程的依赖库及其版本,如果其它库和当前工程有相同的依赖库,该项可以避免依赖库不一致的问题。

paketpull.sh

该脚本的名称可自定义,作用是根据paket.dependencies中的记录拉取当前工程的依赖库,并将其记录到paket.lock中。使用示例如下

#!/bin/bash
paket.exe clear-cache --clear-local
paket.exe install

paketpush.sh

该脚本的名称可自定义,作用是根据paket.template中的记录生成打包文件,并上传到包管理服务器上。使用示例如下

#!/bin/bash
packout=pack.out
project=libbase10
packversion=1.0.0
paket.exe pack --template paket.template --version $packversion $packout >> pack.log
if [ $? -ne 0 ]; then
    echo "pack error"
    exit 1
fi
paket.exe push --url http://127.0.0.1:8624/nuget/test/ --api-key test.com ./$packout/$project.$packversion.nupkg >> push.log
if [ $? -ne 0 ]; then
    echo "upload error"
    exit 1
fi

使用问题

请见:Paket在Linux下使用问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值