惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
Cyberwarzone
Cyberwarzone
博客园 - Franky
V
V2EX
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
Martin Fowler
Martin Fowler
The Cloudflare Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
Vercel News
Vercel News
Blog — PlanetScale
Blog — PlanetScale
Webroot Blog
Webroot Blog
Hacker News: Ask HN
Hacker News: Ask HN
Forbes - Security
Forbes - Security
D
Docker
C
CXSECURITY Database RSS Feed - CXSecurity.com
Project Zero
Project Zero
大猫的无限游戏
大猫的无限游戏
云风的 BLOG
云风的 BLOG
C
Cyber Attacks, Cyber Crime and Cyber Security
Recent Announcements
Recent Announcements
L
LINUX DO - 热门话题
小众软件
小众软件
Stack Overflow Blog
Stack Overflow Blog
G
Google Developers Blog
S
Security @ Cisco Blogs
T
Threat Research - Cisco Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Register - Security
The Register - Security
O
OpenAI News
雷峰网
雷峰网
P
Proofpoint News Feed
宝玉的分享
宝玉的分享
Scott Helme
Scott Helme
Google DeepMind News
Google DeepMind News
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Help Net Security
Help Net Security
F
Full Disclosure
Engineering at Meta
Engineering at Meta
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
T
Tailwind CSS Blog
Google DeepMind News
Google DeepMind News
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
Attack and Defense Labs
Attack and Defense Labs
T
Tenable Blog
AI
AI
Spread Privacy
Spread Privacy

繁星点点

最新轻量级龙虾部署教程 通过netboot.xyz重装系统 giffgaff卡保号教程 Llinux系统中全新透明代理方案(可代理所有出站流量) tailscale开启子网路由常见的坑 OpenWrt固件编译 解决UFW和Docker的问题 使用PGP的非对称算法加密文件 NSSM工具把任意exe程序注册为Windows后台服务 轻量级简约端口转发rinetd 安卓IDE的安装和使用 IP信息查询网站汇总 热点共享代理教程 SSH使用密钥认证登录详细解释 Debian系统公网IP出口切换指南,适用多IP服务器 Windows系统安装Scoop包管理器 安卓Flutter开发学习笔记 使用手机搭建节点服务端 关于github提交记录泄露真实邮箱的处理办法 anytls协议部署教程 caddy给域名用上ECH加密 通过gitlab流水线自动备份仓库 通过CF-Workers代理访问网站 低配机器使用alpine系统跑docker 端口敲门教程 3x-ui面板通过api管理示例 nmap端口扫描 数据库常用命令 snap和winget包管理器 Git推送GitHub常用命令 😩😩😩学不完,根本学不完😩😩😩 使用CDN后获取访客真实IP 一些用于网络测试的下载测速文件 纯v6网络访问v4站点最简单的方法 服务器配置SSH密钥登录 windows重装系统教程 Docker部署哪吒监控 Github-Actions默认用户变量GITHUB_TOKEN的提权语法 给站点套CFT的一些坑 解决CF反代Docker失效的问题 使用py3快速启动一个文件上传和下载的接口 ios系统最新免拔卡使用tiktok方法 clash手搓配置最全协议示例详解 为IP地址申请免费证书并开启HTTPS 实用网站收藏 纯CSS实现剧透效果 在CloudflareWAF中屏蔽国内浏览器 网络安全之百度URL欺骗漏洞分析和复现 超级强大的ansible批量管理主机运维工具使用教程 收集整理的最新的常用VPS脚本工具 无法注册TG账号和国内号码接收不到验证码详细解决方案 国内环境安装xui面板 免费接码网站合集 完整的网络状态码列表 关于xui面板报错无法监听127.0.0.1:62789的问题 Xboard面板常见问题 ios最新美区ID注册方法 V2board前后端分离 Markdown语法教程 Github加速 Docker镜像加速和离线安装 Liunx配置wrap 代理工具和SSH工具推荐 常用代码记录
项目编译构建文档
2024-07-03 · via 繁星点点

各个主流编程语言的安装依赖和构建运行命令

基本代码结构

my-nodejs-project/
├── node_modules/
├── public/
│ └── index.html
├── src/
│ ├── index.js
│ └── App.js
├── .gitignore
├── package.json
└── webpack.config.js

安装依赖(推荐使用pnpm)

npm i

安装依赖包

比如框架、工具库等

npm install 包名

安装开发依赖包

比如测试框架、代码检查、构建工具等

npm install 包名 -D

全局安装依赖包

全局安装的包可以在命令行任何地方直接使用,一般是命令行工具类包
pnpm则是pnpm add -g 包名

npm install -g 包名

构建打包

npm run build

测试启动

npm run dev

直接启动

npm start

基本代码结构

my-python-project/
├── .github/
├── myapp.py
├── config.py
├── requirements.txt
├── scripts/
│   └── run.sh
├── logs/
├── models/
├── services/
├── templates/
├── tests/
├── utils/
├── .env.local
├── .gitignore
└── LICENSE

自动识别所有依赖并生成依赖清单

pip freeze > requirements.txt

安装依赖

pip install -r requirements.txt

运行

python app.py

基本代码结构

my-springboot-project/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── example/
│ │ │ └── MySpringBootApplication.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── static/
│ └── test/
│ └── java/
│ └── com/
│ └── example/
│ └── MySpringBootApplicationTests.java
├── .gitignore
├── build.gradle
└── pom.xml

安装依赖和构建

Maven

mvn clean package

Gradle

./gradlew build

运行构建出来的jar包(一般在项目的target/you.jar目录中)

java -jar target/you.jar

基本代码结构

my-go-project/
├── main.go
└── README.md

清理缓存

go clean -cache

初始化模块

go mod init myapp

自动识别并安装依赖

go mod tidy

在线运行

go run main.go

质量检查

go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
golangci-lint run
go install honnef.co/go/tools/cmd/staticcheck@latest
staticcheck ./...

格式化代码

go fmt ./...

将所有依赖和静态链接一起打包,并优化包大小

GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags="-s -w" -o myapp

Windows系统构建

$env:GOOS="windows"; $env:GOARCH="amd64"; $env:CGO_ENABLED="0"; go build -ldflags="-s -w" -o myapp.exe
$env:GOOS="linux"; $env:GOARCH="amd64"; $env:CGO_ENABLED="0"; go build -ldflags="-s -w" -o myapp-amd64

PHP 💻

基本代码机构

your-project/
├── index.php
├── config/
│   └── config.php
├── src/
│   ├── Controller/
│   ├── Model/
│   ├── View/
│   └── ...
├── public/
│   ├── css/
│   ├── js/
│   └── images/
├── vendor/
├── .env
├── .gitignore
├── composer.json
├── composer.lock
└── README.md

安装依赖

如果项目使用Composer进行依赖管理,请在项目目录中运行composer install

cd /var/www/html/your-project
composer install

运行

安装PHPPHP-FPM 并配置配置nginx,确保你的public/index.php是项目的入口文件,nginx运行目录一般都是这个目录。

环境安装:https://dotnet.microsoft.com/zh-cn/download/dotnet

基本代码结构

MyApp/
├─ MyApp.sln               # 解决方案文件(可选,多项目时使用)
├─ MyApp/                  # 项目目录
│  ├─ MyApp.csproj         # 项目文件(包含依赖、编译选项)
│  ├─ Program.cs           # 主程序入口
│  ├─ Properties/
│  │  └─ launchSettings.json  # 调试配置(VS / Rider)
│  ├─ appsettings.json     # 配置文件(可选)
│  ├─ Models/              # 存放数据模型类
│  │  └─ User.cs
│  ├─ Services/            # 存放服务类
│  │  └─ EmailService.cs
│  ├─ Controllers/         # MVC 或 API 项目才有
│  │  └─ UserController.cs
│  └─ wwwroot/             # Web 静态资源(Web 项目才有)
├─ .gitignore              # git 忽略文件
├─ global.json             # SDK 版本锁定(可选)
└─ README.md

常用命令

# 恢复项目依赖,下载 NuGet 包并生成依赖缓存
dotnet restore

# 安装代码格式化
dotnet tool install -g dotnet-format

# 执行代码格式化
dotnet format

# 编译项目并执行静态代码分析
dotnet build -warnaserror -p:AnalysisLevel=latest

# 运行单元测试,确保代码逻辑正确
dotnet test

# 热重载运行
dotnet watch run

# 生成可部署的生产版本,放在 publish 目录
dotnet publish -c Release