====== 配置 Nop 平台开发环境指南 ====== 开始使用 Nop 平台前,需要配置好本地开发环境。以下是完整步骤。 ===== 环境要求 ===== ^ 工具 ^ 版本 ^ 说明 ^ | JDK | 17+ | 不支持 JDK 8 | | Maven | 3.9.3+ | 项目自带 mvnw 包装器 | | Git | 任意 | 克隆源码 | | IDEA | 2023+ | 配合 nop-idea-plugin | ===== 第一步:安装 JDK ===== 建议使用 OpenJDK 17 或更高版本。某些 JDK 版本(如 graalvm 17.0.9)编译时会报 IndexOutOfBound 异常,建议先用标准 OpenJDK。 **Ubuntu/Debian:** sudo apt install openjdk-17-jdk java -version **Windows:** 从 [[https://adoptium.net/|Adoptium]] 下载安装包,安装后设置 JAVA_HOME 环境变量。 ===== 第二步:克隆源码 ===== git clone https://gitee.com/canonical-entropy/nop-entropy.git cd nop-entropy 国内用户建议用 Gitee 镜像,速度更快。GitHub 镜像同样可用: git clone https://github.com/entropy-cloud/nop-entropy.git **注意:** Windows 下路径不要太深(不要放在 Downloads 深层目录下),建议直接放在 D:\nop 或 C:\nop 这种短路径,避免 Windows 路径长度限制。 ===== 第三步:编译安装 ===== 项目使用 Maven Wrapper(mvnw),不需要预先安装 Maven。首次运行会自动下载所需版本。 # 完整编译安装(跳过测试,单线程模式) ./mvnw clean install -DskipTests # 如果希望并行编译加快速度 ./mvnw clean install -DskipTests -T 1C # 如果遇到依赖解析失败 ./mvnw clean install -DskipTests -U **Windows PowerShell 用户**注意参数要用引号包裹: ./mvnw clean install "-DskipTests" "-Dquarkus.package.type=uber-jar" 首次编译需要下载大量依赖,视网络情况可能需要 10-30 分钟。 ===== 第四步:运行 Demo ===== 编译成功后,可以运行 nop-auth-app 模块验证环境: cd nop-auth/nop-auth-app ./mvnw compile quarkus:dev 启动后访问 http://localhost:8080,应该能看到 Nop 平台的登录页面。 默认管理员账号:nop / nop-test ===== 第五步:IDEA 配置 ===== **安装 nop-idea-plugin:** - 打开 IDEA,进入 Settings → Plugins - 选择 Install Plugin from Disk - 找到 nop-idea-plugin 目录下的构建产物 - 重启 IDEA 插件提供以下功能: * DSL 文件语法高亮 * 代码自动补全 * 文件跳转(Ctrl+Click) * XLang 断点调试 **运行配置:** - 导入项目:File → Open → 选择 nop-entropy 根目录 - 等待 Maven 索引完成 - 找到 nop-auth-app 模块,运行 QuarkusApplication ===== 第六步:常见问题 ===== **编译失败:Could not resolve dependencies** 通常是本地 Maven 缓存问题: # 清理本地缓存后重试 rm -rf ~/.m2/repository/io/github/entropy-cloud ./mvnw clean install -DskipTests -U **PowerShell 乱码:** $OutputEncoding = [Console]::OutputEncoding = [Text.Encoding]::UTF8 **编译内存不足:** export MAVEN_OPTS="-Xmx2g" ./mvnw clean install -DskipTests **IDEA 无法识别 DSL 文件:** 确保已安装 nop-idea-plugin 并重启 IDEA。 ===== 下一步 ===== 环境配置完成后,建议从以下内容入手: * [[https://gitee.com/canonical-entropy/nop-entropy/tree/master/docs/tutorial/tutorial.md|官方开发示例文档]] * 阅读 [[../reversible_computing|可逆计算理论]] 了解平台的设计原理 * 查看 [[../reversible_computing_implementation/overview|实现机制概览]] 了解各模块的关系