生成本地package
生成本地package
- 新建一个Local文件夹, 将Library/package_cache , packages 里的文件都放入local
- 批量导入local
手动package manager 窗口添加
批量脚本添加
using System.IO;
using System.Linq;
using UnityEditor.PackageManager;
using UnityEditor.PackageManager.Requests;
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;public class PackageInstaller : MonoBehaviour
{[MenuItem("Tools/Add Local Packages")]public static void AddLocalPackages(){List<string> localPackages = new List<string>();// 打印G:\UnityProj\Packages_Local\目录下的所有子文件名Debug.Log("G:\\UnityProj\\Packages_Local\\目录下的所有子文件名:");var files = System.IO.Directory.GetDirectories(Application.dataPath + "/../Packages_Local");foreach (var file in files){var name = Path.GetFileName(file);Debug.Log(name);localPackages.Add("file:/GameLib/UnityProj/Packages_Local/" + name);}// foreach (var package in localPackages)// {// Debug.Log(package);// } foreach (var package in localPackages){AddPackage(package);}}public static void AddPackage(string packagePath){var request = Client.Add(packagePath);while (!request.IsCompleted){// Wait for the package to be added}if (request.Status == StatusCode.Success){Debug.Log($"Package {packagePath} added successfully.");}else{Debug.LogError($"Failed to add package {packagePath}: {request.Error.message}");}}
}