首页 > 其他分享 >react19.0.0 仓库构建

react19.0.0 仓库构建

时间:2024-05-25 18:33:05浏览次数:30  
标签:node closure java 仓库 js react -- 构建 react19.0

react19.0.0 仓库构建

运行指令 npm run build

报以下错误

panminxiang@Mac react % npm run build

> build
> node ./scripts/rollup/build-all-release-channels.js

 BUILDING  react.development.js (node_dev)
 COMPLETE  react.development.js (node_dev)

 BUILDING  react.production.js (node_prod)
 OH NOES!  react.production.js (node_prod)

-- PLUGIN_ERROR (scripts/rollup/plugins/closure-plugin) --
Error: java -jar /Users/panminxiang/Sites/Commonfiles/Github/react/node_modules/google-closure-compiler-java/compiler.jar --compilation_level=SIMPLE --language_in=ECMASCRIPT_2020 --language_out=ECMASCRIPT5_STRICT --emit_use_strict=true --env=CUSTOM --warning_level=QUIET --source_map_include_content=true --use_types_for_optimization=false --process_common_js_modules=false --rewrite_polyfills=false --inject_libraries=false --allow_dynamic_import=true --assume_function_wrapper=true --renaming=false --js=/var/folders/cs/w489x32x3hvfglcysqqq580m0000gn/T/tmp-4826Fd01F1kduh3u

The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.




    at /Users/panminxiang/Sites/Commonfiles/Github/react/scripts/rollup/plugins/closure-plugin.js:16:16
    at ChildProcess.<anonymous> (/Users/panminxiang/Sites/Commonfiles/Github/react/node_modules/google-closure-compiler/lib/node/closure-compiler.js:103:9)
    at ChildProcess.emit (node:events:517:28)
    at maybeClose (node:internal/child_process:1098:16)
    at Socket.<anonymous> (node:internal/child_process:450:11)
    at Socket.emit (node:events:517:28)
    at Pipe.<anonymous> (node:net:350:12)

错误提示没有 java 命令启动 jar 包

瞅一眼 rollup/plugins/closure-plugin.js 文件

const ClosureCompiler = require('google-closure-compiler').compiler;

再瞅一眼 google-closure-compiler/lib/node/closure-compiler.js

Compiler.prototype.javaPath = 'java';
const compilerPath = require('google-closure-compiler-java');
let compileProcess = spawn(
  this.javaPath,
  this.commandArguments,
  this.spawnOptions
);

去 google-closure-compiler-java.js 看最后一眼

module.exports = require.resolve('./compiler.jar');

大致确定想用 java 来处理 .jar 包

安装 java
搜出来的地址是:https://www.java.com/zh-CN/download/ (坑)

安装完成后,重新构建
报错:

panminxiang@Mac react % npm run build

> build
> node ./scripts/rollup/build-all-release-channels.js

 BUILDING  react.development.js (node_dev)
 COMPLETE  react.development.js (node_dev)

 BUILDING  react.production.js (node_prod)
 OH NOES!  react.production.js (node_prod)

-- PLUGIN_ERROR (scripts/rollup/plugins/closure-plugin) --
Error: java -jar /Users/panminxiang/Sites/Commonfiles/Github/react/node_modules/google-closure-compiler-java/compiler.jar --compilation_level=SIMPLE --language_in=ECMASCRIPT_2020 --language_out=ECMASCRIPT5_STRICT --emit_use_strict=true --env=CUSTOM --warning_level=QUIET --source_map_include_content=true --use_types_for_optimization=false --process_common_js_modules=false --rewrite_polyfills=false --inject_libraries=false --allow_dynamic_import=true --assume_function_wrapper=true --renaming=false --js=/var/folders/cs/w489x32x3hvfglcysqqq580m0000gn/T/tmp-76517zhLNrLkJEI7

Exception in thread "main" java.lang.UnsupportedClassVersionError: com/google/javascript/jscomp/CommandLineRunner has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:635)



    at /Users/panminxiang/Sites/Commonfiles/Github/react/scripts/rollup/plugins/closure-plugin.js:16:16
    at ChildProcess.<anonymous> (/Users/panminxiang/Sites/Commonfiles/Github/react/node_modules/google-closure-compiler/lib/node/closure-compiler.js:103:9)
    at ChildProcess.emit (node:events:517:28)
    at maybeClose (node:internal/child_process:1098:16)
    at Socket.<anonymous> (node:internal/child_process:450:11)
    at Socket.emit (node:events:517:28)
    at Pipe.<anonymous> (node:net:350:12)

意思是 google-closure-compiler-java jar 包是 jdk55 编译的,我的 JRE 处理不了,版本太低了。而且中文官网只给了 JRE,没给 JDK。

上面官网是 java 面向普通用户,去开发者官网下载 java
https://www.oracle.com/java/technologies/downloads/#jdk22-mac
选择 dmg 文件后,覆盖安装

panminxiang@Mac react % /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    22.0.1 (arm64) "Oracle Corporation" - "Java SE 22.0.1" /Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents/Home
    1.8.411.09 (arm64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents/Home

有 jdk 信息了

重新构建

panminxiang@Mac react % npm run build

> build
> node ./scripts/rollup/build-all-release-channels.js

 BUILDING  react.development.js (node_dev)
 COMPLETE  react.development.js (node_dev)

 BUILDING  react.production.js (node_prod)
 COMPLETE  react.production.js (node_prod)

 BUILDING  React-dev.js (fb_www_dev)
 COMPLETE  React-dev.js (fb_www_dev)

 BUILDING  React-prod.js (fb_www_prod)
 COMPLETE  React-prod.js (fb_www_prod)

 BUILDING  React-profiling.js (fb_www_profiling)
 COMPLETE  React-profiling.js (fb_www_profiling)

....

─────────────────────────────────────────────────────────────────────────────┬───────────┬──────────────┬──────┬───────────┬──────────────┬──────┐
│ Bundle                                                                      │ Prev Size │ Current Size │ Diff │ Prev Gzip │ Current Gzip │ Diff │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ react.development.js  (NODE_DEV)                                            │ 0 B       │ 91.23 KB     │ n/a  │ 0 B       │ 25.02 KB     │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ react.production.js  (NODE_PROD)                                            │ 0 B       │ 16.48 KB     │ n/a  │ 0 B       │ 4.29 KB      │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-dev.js  (FB_WWW_DEV)                                                  │ 0 B       │ 113.37 KB    │ n/a  │ 0 B       │ 29.4 KB      │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-prod.js  (FB_WWW_PROD)                                                │ 0 B       │ 22.55 KB     │ n/a  │ 0 B       │ 5.78 KB      │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-profiling.js  (FB_WWW_PROFILING)                                      │ 0 B       │ 22.97 KB     │ n/a  │ 0 B       │ 5.85 KB      │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-dev.js  (RN_FB_DEV)                                                   │ 0 B       │ 101.8 KB     │ n/a  │ 0 B       │ 27.34 KB     │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-prod.js  (RN_FB_PROD)                                                 │ 0 B       │ 19.19 KB     │ n/a  │ 0 B       │ 4.98 KB      │ n/a  │
├─────────────────────────────────────────────────────────────────────────────┼───────────┼──────────────┼──────┼───────────┼──────────────┼──────┤
│ React-profiling.js  (RN_FB_PROFILING)                                       │ 0 B       │ 19.61 KB     │ n/a  │ 0 B       │ 5.05 KB      │ n/a  │
...

下面就可以构建 react devtools 插件了
我只想用下 react devtools 就这么难么

标签:node,closure,java,仓库,js,react,--,构建,react19.0
From: https://www.cnblogs.com/bibiafa/p/18212767

相关文章

  • react19.0.0 仓库安装
    react19.0.0仓库安装克隆仓库到本地:gitclonehttps://github.com/facebook/react.gitReactVersions中可以看到当前版本为19.0.0在项目下有个.nvmrc文件,指定了node版本为18.20.0(react18.3.1配套的node版本为14.17.6这跨度有点大啊)安装node18.20.0nvmins......
  • react 19.0.0 仓库安装
    react19.0.0仓库安装克隆仓库到本地:gitclonehttps://github.com/facebook/react.git在项目下有个.nvmrc文件,指定了node版本为18.20.0安装node18.20.0nvminstall18.20.0安装完成后切换node版本nvmuse,该命令会根据.nvmrc的配置切换到node18.20.0packa......
  • ArcGIS 水文分析模型构建
    前言在地理信息系统(GIS)领域,水文分析是一项至关重要的任务,它涉及到对地表水流动路径、河流网络、流域划分等关键水文特征分析。这些分析对于水资源管理、洪水预警、环境规划以及城市排水系统设计等众多领域都具有重要的应用价值。本文旨在探讨ArcGIS中水文分析的全过程,并展示如何......
  • 数据仓库——ETL(详细教程)
    目录建模方式ETL新建etl项目,设置项目名称位置新建数据源新建SSLS包做全量双击编辑执行SQL任务 双击编辑数据流任务编辑OLEDB源编辑数据流转换编辑OLEDB源目标右键选择执行做增量 编辑执行SQL任务编辑任务条件编辑数据流任务1编辑数据流任务2执行任务数......
  • 利用英特尔 Gaudi 2 和至强 CPU 构建经济高效的企业级 RAG 应用
    检索增强生成(RetrievalAugmentedGeneration,RAG)可将存储在外部数据库中的新鲜领域知识纳入大语言模型以增强其文本生成能力。其提供了一种将公司数据与训练期间语言模型学到的知识分开的方式,有助于我们在性能、准确性及安全隐私之间进行有效折衷。通过本文,你将了解到英特尔......
  • 微服务:构建Spring Boot与Dubbo集成:以Nacos为注册中心
    一、前言  Dubbo是阿里巴巴公司开源的一个高性能、轻量级的JavaRPC框架,用于构建分布式服务架构。Dubbo提供了三大核心能力:面向接口的远程方法调用、智能容错和负载均衡,以及服务自动注册和发现。二、Dubbo的特点  面向接口代理的高性能RPC调用:提供高性能的基于代理的......
  • 29.4K star! 仅需几行代码快速构建机器学习 Web 应用项目,无需前端技能!
    大家好,我是狂师!今天给大家推荐一款开源的Python库:Gradio!Gradio是一个开源的Python库,用于创建机器学习和数据科学的交互式应用和演示。项目地址:https://github.com/gradio-app/gradio1、项目介绍Gradio旨在简化展示和测试机器学习模型的过程,它允许用户通过构建漂亮的界面来......
  • 使用RAG和文本转语音功能,我构建了一个 QA 问答机器人
    节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学.针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。汇总合集:《大模型实战宝典》(2024版)正式发......
  • powershell脚本批量拉取 git仓库文件
    #定义基础URL和数据库列表$BASE_URL="http://8.8.11.99:8999/yaya/"$DATABASES="common-service","bi-system","erp","gateway","pdm","plm","public-service","scm",&quo......
  • 构建高效的软件研发生命周期:从技术选型到监控运维的完整流程
    引言现代软件研发已经超越了简单的编码和发布阶段,演化成了一个复杂的生命周期过程,涵盖了技术选型、初始化、开发、测试、部署、监控和运维等多个环节。这些环节相互关联,共同确保项目的成功交付和持续优化。本文将深入探讨如何构建高效的软件研发生命周期,包括关键步骤、最佳实践和......