gradle-node-plugin 相关问题


在发布为 npm 包之前使用 npm 链接测试组件时出现重复的 ReactJS 导入问题

我有一个像这样的简单组件。 从'react'导入React,{useState}; 函数 MyComponentWithState(props) { const [值,setValue] = useState(0); 返回 ( 我的价值... 我有一个像这样的简单组件。 import React, {useState} from 'react'; function MyComponentWithState(props) { const [value, setValue] = useState(0); return ( <p>My value is: {value}</p> ) } export default MyComponentWithState; 我想将它作为单独的包发布在 NPM 上。因此,为此我准备了 package.json 和 webpack.config.js,如下所示。 package.json: { "name": "try-to-publish", "version": "0.0.1", "description": "Just a test", "main": "build/index.js", "scripts": { "start": "webpack --watch", "build": "webpack" }, "author": { "name": "Behnam Azimi" }, "license": "ISC", "peerDependencies": { "react": "16.9.0", "react-dom": "16.9.0" }, "dependencies": { "react": "16.9.0", "react-dom": "16.9.0", "prop-types": "15.7.2", "react-scripts": "3.1.1", "webpack": "4.39.3" }, "devDependencies": { "@babel/core": "7.6.0", "@babel/plugin-proposal-class-properties": "7.5.5", "@babel/preset-env": "7.6.0", "@babel/preset-react": "7.0.0", "babel-loader": "8.0.6", "babel-plugin-transform-object-rest-spread": "6.26.0", "babel-plugin-transform-react-jsx": "6.24.1", "css-loader": "3.2.0", "node-sass": "4.12.0", "sass-loader": "8.0.0", "style-loader": "1.0.0", "webpack-cli": "3.3.8", "webpack-external-react": "^1.1.2" } } webpack.config.json: const path = require('path'); module.exports = { entry: './src/index.js', output: { path: path.resolve(__dirname, 'build'), filename: 'index.js', libraryTarget: 'commonjs2' }, module: { rules: [ { test: /\.(js|jsx)$/, exclude: /node_modules/, include: path.resolve(__dirname, 'src'), use: { loader: "babel-loader" } }, ] }, resolve: { alias: { 'react': path.resolve(__dirname, 'node_modules/react'), 'react-dom': path.resolve(__dirname, 'node_modules/react-dom'), } }, externals: { 'react': "commonjs react", 'react-dom': "commonjs react-dom" }, }; 这是我的 .babelrc: { "presets": [ "@babel/preset-env", "@babel/preset-react" ], "plugins": ["@babel/plugin-proposal-class-properties"] } 当我将组件发布到 NPM 并使用 `npm install 将其安装到我的另一个 ReactJs 项目中时,这些配置就像魅力一样,但我的观点是本地测试! 我想在发布之前测试这个组件/库。为此,我使用 npm link 功能将我的组件与我的主 ReactJS 项目链接起来。 正如您在上面看到的,我的组件是功能性的,我也使用了钩子。因此,当我将本地链接的库注入到我的主 ReactJs 项目中时,会遇到此错误, 无效的挂钩调用。钩子只能在函数组件的主体内部调用。发生这种情况可能是由于以下原因之一: 1.您的React和渲染器版本可能不匹配(例如React DOM) 2. 你可能违反了 Hooks 规则 3. 您可能在同一个应用程序中拥有多个 React 副本 我的问题与第三个原因有关。我的项目使用 ReactJs 并导入一次,我的组件也会导入 React!我的意思是在一个项目中两次 React 导入!. 我的 Webpack 配置中还有关于 react 和 react-dom 的 externals 配置。 我应该怎么做才能解决这个问题?我的错误在哪里? 更新: 我也尝试过 @sung-m-kim 和 @eddie-cooro 所说的,但没有成功!意思是,我更改了 package.json 并从 react 中删除了 react-dom 和 dependencies 并将它们添加到 devDpendencies。 我终于通过这些步骤解决了这个问题。 运行npm链接里面 <your-library-package>/node_modules/react 还有 运行npm链接里面 <your-library-package>/node_modules/react-dom 然后在 应用程序根目录中运行 npm link react 和 npm link react-dom 并且不要忘记将 React 和 React-dom 作为库中的外部对象保留 // webpack.config.js const externals = { "react": "react", "react-dom": "react-dom", } module.exports = { . . . externals } 我解决了我的问题。我使用 RollupJS 而不是 Webpack 作为捆绑工具进行捆绑。 这是我的rollup.config.js: import {uglify} from 'rollup-plugin-uglify' import babel from 'rollup-plugin-babel' export default { input: "./src/index.js", external: ['react', 'react-dom'], output: { name: 'test-lib', format: "cjs", }, plugins: [ babel({ exclude: "node_modules/**" }), uglify(), ], }; 和我的package.json: { "name": "test-lib", "version": "1.0.0", "main": "dist/test-lib.min.js", "scripts": { "build": "rollup -c -o dist/test-lib.min.js" }, "author": "Behnam Azimi", "license": "ISC", "peerDependencies": { "react": "^16.9.0", "react-dom": "^16.9.0" }, "devDependencies": { "@babel/core": "^7.6.0", "@babel/preset-env": "^7.6.0", "@babel/preset-react": "^7.0.0", "rollup": "^1.21.4", "rollup-plugin-babel": "^4.3.3", "rollup-plugin-commonjs": "^10.1.0", "rollup-plugin-uglify": "^6.0.3" } } 经过这些更改,npm link在我的ReactJS(Hooks)项目中真正发挥了作用。 请注意,这只是一个简单的 Rollup 配置来展示我的解决方案,您可以在配置中添加多种内容,例如热重载、样式加载器和许多其他插件。 仅在 package.json 的 react 部分(而不是 react-native)内设置 peerDependencies 和 dependencies 包。另外,对于本地开发(当您的包未包含在任何其他 React 项目中并且您想在本地运行它时),您可以使用 devDependencies 字段。 我在打字稿反应项目中解决了这个问题。 可能,当使用 npm link 时,请使用主应用程序项目和组件项目中的 react。 因此,在您的 package.json 中从 react 和/或 dependencies 中删除 devDependencies 检查答案:https://stackoverflow.com/a/62807950/5183591 我也有同样的问题。 就我而言,我开发了一些 UI 组件作为包,其中有一个包含 React 应用程序的示例文件夹,用于创建 React 应用程序。 问题是,当我使用 npm i ../ 将包安装到示例应用程序中时,它会将包中的所有文件安装到示例应用程序中,包括 node_modules 文件夹。由于我已经安装了 react 和 react-dom 作为对等依赖项,示例应用程序现在有两个不同的 React 副本。 从包中删除 node_module 文件夹并重新安装包再次解决了我的问题。


Gradle 依赖项 - 将一个模块替换为另一个模块

在我的项目中,gradle 显示了依赖关系: com.google.guava:番石榴:19.0 -> 20.0-rc1 com.google.guava:guava-jdk5:17.0 Afaik gradle 选择最新版本的同名依赖项,这...


强制 Gradle 在不清理的情况下组装 APK

与强制 gradle 生成 apk 类似,我想强制 Gradle 生成 apk,以防先前的构建已被移动或删除。我很好奇是否可以在构建目录时执行...


未找到 id 为“org.sonarqube”的插件

我正在尝试使用 gradle 实现声纳,以测量我的项目的代码覆盖率。 我们正在使用 gradle-4.0.1 和 sonarqube-6.4 。 当我从命令行运行 gradle sonarqube 时,出现此错误-


Gradle 同步失败:无法为锁定文件创建父目录

我在 android studio 中查看了 git 存储库,但遇到了 Gradle 同步失败错误。 当项目想要构建时,android studio 会抛出如下错误: Gradle 同步法...


gradle 设置密钥库文件的绝对路径值

我想将我的密钥库保存在项目目录之外。我不想在存储库中存储文件路径,因此我将值委托给 ~/.gradle/gradle.prop 中适当的 gradle 变量...


如何将 testOptions.unitTests.all 转换为 gradle Kotlin dsl

如何在 Gradle 中将这段代码从 Groovy 转换为 Kotlin DSL? testOptions.unitTests.all { 测试记录{ 异常格式=“完整” 事件“通过”,&...


通过 github 操作创建 EC2 AMI 时出现错误:exec: "session-manager-plugin": $PATH 中找不到可执行文件

==> learn-packer.amazon-ebs.ubuntu:exec:“session-manager-plugin”:在 $PATH 中找不到可执行文件 learn-packer.amazon-ebs.ubuntu:启动 portForwarding 会话“Amy-


Maven-shade-plugin 检测到某些类文件存在于两个或多个 JAR 中

我正在尝试使用 maven-shade-plugin,但收到警告: javafx-controls-18.0.1-win.jar,javafx-graphics-18.0.1-win.jar, javafx-media-18.0.1-win.jar、javafx-web-18.0.1-win.jar 定义 1 覆盖...


在 Docker Compose 中调试 gradle

我正在尝试调试在 docker 中运行的 gradle 应用程序,但是当我尝试在端口 5005 上连接调试器时,出现以下错误: 演示 % jdb -attach localhost:5005 ...


ESLint:解析错误:意外的标记:

大家好我正在将我的 vue3 项目从 js 迁移到 typescript,我遇到了这个问题: 这是我在 .vue 文件中的代码 const toto = (msg: string) => { </desc> <question vote="7"> <p>大家好,我正在将我的 vue3 项目从 js 迁移到 typescript,我遇到了这个问题:</p> <p><a href="https://i.stack.imgur.com/y5tG8.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL3k1dEc4LnBuZw==" alt=""/></a></p> <p>这是我在 .vue 文件中的代码</p> <pre><code>&lt;script setup lang=&#34;ts&#34;&gt; const toto = (msg: string) =&gt; { console.log(msg) } &lt;/script&gt; </code></pre> <p>这是我的 eslintrc.js</p> <pre><code>module.exports = { &#39;env&#39;: { &#39;browser&#39;: true, &#39;es2021&#39;: true }, &#39;extends&#39;: [ &#39;eslint:recommended&#39;, &#39;plugin:vue/vue3-essential&#39; ], &#39;parserOptions&#39;: { &#39;ecmaVersion&#39;: 13, &#39;sourceType&#39;: &#39;module&#39; }, &#39;plugins&#39;: [ &#39;vue&#39; ], &#39;rules&#39;: { &#39;vue/multi-word-component-names&#39;: &#39;off&#39;, &#39;vue/object-curly-spacing&#39;: [2, &#39;always&#39;], &#39;vue/html-closing-bracket-spacing&#39;: [2, { &#39;selfClosingTag&#39;: &#39;always&#39; }], &#39;vue/max-attributes-per-line&#39;: [2, { &#39;singleline&#39;: { &#39;max&#39;: 1 }, &#39;multiline&#39;: { &#39;max&#39;: 1 } }], &#39;semi&#39;: [2, &#39;never&#39;] } } </code></pre> </question> <answer tick="true" vote="10"> <p>您需要配置 eslint 以支持 typescript,因为 eslint 不支持开箱即用。 首先,您需要安装<a href="https://www.npmjs.com/package/@typescript-eslint/parser" rel="nofollow noreferrer">@typescript-eslint/parser</a>,然后安装<a href="https://www.npmjs.com/package/@typescript-eslint/eslint-plugin" rel="nofollow noreferrer">@typescript-eslint/eslint-plugin</a>。 安装完这些后,请按如下方式更新您的配置 - </p> <pre><code>module.exports = { &#39;env&#39;: { &#39;browser&#39;: true, &#39;es2021&#39;: true, node: true }, &#39;extends&#39;: [ &#39;eslint:recommended&#39;, &#39;plugin:vue/vue3-essential&#39; ], &#39;parserOptions&#39;: { &#39;ecmaVersion&#39;: 12, &#39;sourceType&#39;: &#39;module&#39;, parser: &#39;@typescript-eslint/parser&#39; }, &#39;plugins&#39;: [ &#39;vue&#39;, &#39;@typescript-eslint&#39; ], &#39;rules&#39;: { &#39;vue/multi-word-component-names&#39;: &#39;off&#39;, &#39;vue/object-curly-spacing&#39;: [2, &#39;always&#39;], &#39;vue/html-closing-bracket-spacing&#39;: [2, { &#39;selfClosingTag&#39;: &#39;always&#39; }], &#39;vue/max-attributes-per-line&#39;: [2, { &#39;singleline&#39;: { &#39;max&#39;: 1 }, &#39;multiline&#39;: { &#39;max&#39;: 1 } }], &#39;semi&#39;: [2, &#39;never&#39;] } } </code></pre> </answer> <answer tick="false" vote="1"> <p>就我而言,问题是我使用解析器选项作为数组,而不是字符串:</p> <pre><code> parserOptions: { - parser: [&#39;@typescript-eslint/parser&#39;], + parser: &#39;@typescript-eslint/parser&#39;, }, </code></pre> </answer> <answer tick="false" vote="0"> <p>如果你在项目中同时使用 JS 和 TS,此配置有帮助</p> <pre><code> overrides: [ { files: [&#39;*.vue&#39;], parser: &#39;svelte-eslint-parser&#39;, parserOptions: { parser: { // Specify a parser for each lang. ts: &#39;@typescript-eslint/parser&#39;, js: &#39;espree&#39;, typescript: &#39;@typescript-eslint/parser&#39; } } } ], </code></pre> </answer> <answer tick="false" vote="-1"> <p>我在节点 v12.22.9 上遇到了这个问题。通过升级到 v14.21.2,我不再遇到解析错误。您可以使用命令升级/安装</p> <pre><code>nvm install v14.21.2 </code></pre> </answer> </body></html>


多次`maven-jar-plugin`执行导致编译问题

我有一个多模块Maven项目: 项目根目录 模块:主应用程序 模块:附加模块 - 取决于主应用程序 我正在使用 maven-jar-plugin 来编译额外的 JAR 文件


Android Studio:导入库的奇怪问题

我正在尝试使用 Android Studio (gradle 8) 和公共 github 库:AndroidUSBCamera 创建一个 Android 应用程序。 我不认为我面临与库相关的问题,而是依赖/gradle/android


node index.js 未在终端中运行

我的 VS CODE 屏幕截图 代码是正确的,没有错误。我已经安装了最新版本的 Node js,并且没有更新显示 Node Index.js 仍然没有在术语中运行...


Gradle生成的启动脚本找不到主java类

Gradle生成的启动脚本运行时找不到主类: ./应用程序名称.bat 错误:无法找到或加载主类 packageName.NameOfMainClass 我的 build.gradle 文件看起来


Gradle 构建时的 Kotlin 警告

自从我开始将项目从 java 转换为 kotlin 以来,我一直在 Mac 上遇到构建性能问题。 我将 gradle 与 Android Studio 3.0.1 一起使用 问题是当我构建/运行/


docker中npm start启动node应用程序的问题

我阅读了一些 Docker 和 Node.js 最佳实践文章,例如https://github.com/nodejs/docker-node/blob/main/docs/BestPractices.md 或使用


使用 Karate Runner 和 Gradle Kotlin 调试空手道

由于 Gradle 默认其构建文件使用 Kotlin,而且我从来都不是 Groovy 的粉丝,因此尝试使用开源 Karate Runner (v1.2.5) 进行调试。我已经尝试了几个版本...


在 Gradle Bar 中找不到 SHA-1 指纹密钥的签名报告:Android Studio Hedgehog

这是我在Android Studio中的GradleBar(版本:hedgehog) 我想从 Android Studio for Firebase 获取 SHA-1 密钥指纹。 我想要在我的 gradle 栏中签名报告文件的示例 ->


Gradle:如何在多个依赖项中拥有相同传递依赖项的单独版本

在我的 gradle 项目中,我使用以下依赖项: :光束-数据流-java :google-tink(1.7.0版本) 下面是传递依赖图: 梁-dataflow-java - > google-api-client:2.2.0 克...


使用 Gradle 进行 SonarCloud 分析的 Azure Pipeline 成功,但未发布结果

我尝试分析 Java 存储库,使用 Gradle 包装器进行构建,然后在我的 SonarCloud 组织中发布结果。 我正在使用 Azure DevOps Pipeline 进行构建,但是,我无法看到...


这个curl命令的node js等效项是什么?

我有这个curl命令,我需要在node js中编写: 卷曲-X POST \ https://image.adobe.io/pie/psdService/renditionCreate \ -H“授权:不记名$令牌”\ -H“x-api-...


使用多个 JRE 版本/位运行 Gradle 测试

我有一个使用 Gradle 构建的 Java 项目,它具有不同的代码路径,具体取决于 JRE 位数。我正在为内部编写 JUnit 5 测试,但我需要在 64 位和 32 位 JRE 上运行它们。


Jenkinsfile / recordIssues 从文件创建“过滤器”数组

我们使用“Warnings Next Generation Plugin”中的 recordIssues 来可视化 Trivy-Dockerimage-Scanner“aquasec/trivy”生成的结果。这个工具可以...


在 iOS 中我们有类似 Android 上的 Gradle Build Flavors 的东西吗

在 iOS 中,我们有类似 Android 上的 Gradle Build Flavors 的东西。 基本上我想将 Applause SDK 与我的应用程序集成,但我不希望该代码成为发布版本的一部分。我只想...


未找到巢/招摇

错误“@nestjs/swagger/plugin”找不到插件! 启动我的 Nestjs 项目时出现此错误。我不知道出了什么问题。 Nestjs/swagger 包已安装。


Node Sass 版本 9.0.0 与 ^4.0.0 不兼容

我的应用程序中没有安装node-sass或sass包。但我一直收到这个错误 ./src/scss/styles.scss 中的错误(./node_modules/@angular-devkit/build-angular/src/angular-cli-files/plu...


当我尝试在 Visual Code Studio 上运行“ts-node index.ts”等代码时,它显示错误消息

/usr/local/lib/node_modules/ts-node/src/index.ts:857 const DiagnosticText = formatDiagnostics(诊断,diagnosticsHost); 类型错误:formatDiagnostics 不是函数 在 createTSError (/usr/loc...


错误 TS1192:模块“http”没有默认导出

信息:node_modules/node-expose-sspi/dist/sso/client.d.ts:3:8 - 错误 TS1192:模块“http”没有默认导出。 在我安装了node-expose-sspi之后,然后编译了Angular项目(v...


在 WSL2 中使用 Gradle 对 Kotlin Spring Boot 应用程序进行 Docker 化是行不通的

我正在使用 WSL 2,想要使用 gradle (kotlin) 对 spring boot kotlin 应用程序进行 dockerize,并使其全部在 Docker 中运行,这样我就不必在本地安装任何内容。但每次我运行 docker-compose


使SLF4J在Android中登录Logcat并在测试中登录到控制台(gradle依赖问题)

我正在 Android Studio 中使用 gradle (Kotlin DSL) 进行构建,编写一个 Android 应用程序。我的目标是使用 SLF4J 并在运行时将所有日志从应用程序和第三方库重定向到 logcat...


Node Express.js 应用程序在本地运行良好,但在 Docker 中显示“无法获取/”

我在 Node 应用程序中定义了一个 Express.js 服务器,如下所示: const express = require('express') const SignRequest = require('./SignRequest/lambda/index.js') const VerifyResponse = require('./


使用 Node Express 托管网站无法与 Windows 任务计划程序一起使用

我编写了一个简单的网站,并使用 Node Express 托管它。 const express = require('express') 常量应用程序 = Express() app.use(express.static('./')) app.listen(7100, () => { console.log('开始'...


如何解决Eslint插件歧义?

我有一个 eslint 配置,它扩展了其他一些配置。这些包依赖于“@typescript/eslint-plugin”,但它们使用不同的版本。 扩展:['airbnb', 'airbnb-typescript', '@some-p...


node/nodemon 中是否有对 typescript 的源映射支持?

我有一个用 typescript@2 编写的节点项目。 我的 tsconfig 将 sourceMap 设置为 true 并生成 *.map.js 文件。当我通过 node 或 nodemon 执行转译的 *.js JavaScript 文件时,我...


spring依赖管理gradle插件依赖版本jars

可以通过两种方式导入依赖管理。 插件{ id 'io.spring.dependency-management' 版本 '1.1.4' } 依赖项{ 实现平台("org.springframework.boot:spring-boot-


如何修复构建gradle失败

这是错误代码 构建文件 'C:\Users\SSAFY\Desktop\jae\pjt1\sub1\sculpture-project ackend_sculpture uild.gradle' 行:19 评估根项目“ssafy”时出现问题。 > org.gradle.api.


如何在 Gradle 脚本中传递默认 JVM 参数,同时允许扩展变量?

我的 build.gradle.kts 文件中有以下内容: 插件{ kotlin(“jvm”) 版本“1.9.20” 应用 } 应用 { mainClass.set("MainKt")


找不到phonepe.intentsdk.android.release:IntentSDK:2.4.1 React Native

android构建gradle: // 顶级构建文件,您可以在其中添加所有子项目/模块通用的配置选项。 构建脚本{ 分机{ buildToolsVersion = "33.0.0"


如何停止maven输出“[警告]配置选项'appendAssemblyId'设置为false。”?

我有一个生成jar的maven项目,但没有附加maven-assemble-plugin的appendAssemblyId。 如何让 Maven 停止发出警告:“配置选项‘appendAssemblyId’已设置...


在使用 Express 的 Node app.js 之后,控制台未显示“服务器启动”

当我在终端上插入 Node app.js 时,我没有在控制台上收到启动服务器:3001 消息。 我的 app.js 文件内容: var createError = require('http-errors'); var express = require('express'); 变量路径 =


Laravel 10 Vite“npm run build”创建空文件

由于某种原因,运行该命令时,某些脚本会编译,而某些脚本的内容会被“删除”。这是我的 vite.config.js 文件: 从“laravel-vite-plugin”导入 laravel; 导入vu...


Maven:无法找到或加载主类

我制作了第一个 Spring 应用程序,现在我需要将其打包到 jar 文件中进行部署。在 pom.xml 中,我指定了 maven-jar-plugin 以便自动创建清单文件......


在 Docker 中的 Ubuntu 上安装最新版本 Node (v20) 的说明不起作用?

我只是按照说明在 Ubuntu 上的 docker 中安装了最新版本的 Node (v20),在我的 Dockerfile 中包含以下内容: 来自 --platform=linux/amd64 ubuntu:22.04 运行 apt-get update 运行 apt-get...


在 Android 应用程序中启用撰写指标

我想通过此官方文档启用撰写指标。 在 root gradle 中我添加了以下内容: 子项目{ 任务.withType { 科特林选项 { ...


当我尝试“将项目与 gradle 文件同步”时,会弹出警告

警告:将新的 ns schemas.android.com/repository/android/common/02 映射到旧的 ns schemas.android.com/repository/android/common/01 警告:映射新的 ns schemas.android.com/repository/android/ge...


为什么ElasticSearch将主分片和副本分片放在同一主机上?

这是添加到现有集群测试中的新主机,触发了重新平衡过程。 两个节点node-5、node-6位于新物理主机中。 对于每个分片,只有一个主分片...


Kotlin/Spring Boot 应用程序无法使用 Docker 在 Maven 中构建

我正在尝试为 Kotlin/Spring Boot 应用程序构建一个映像。但是当我运行 docker build 时出现以下错误: [错误] 无法执行目标 org.jetbrains.kotlin:kotlin-maven-plugin:1.7.20:


为什么ElasticSearch将主分片和副本分片放在同一主机上?

这是添加到现有集群测试中的新主机,触发了重新平衡过程。 两个节点node-5、node-6位于新主机中。 对于每个分片,只有一个主分片和一个


Discord.js 聊天机器人

请帮助我。这是我下面关于discord.js 聊天机器人的代码 const fetch = require("node-fetch"); const {ChannelType} = require("discord.js"); client.on('messageCreate...


© www.soinside.com 2019 - 2024. All rights reserved.