微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将 Sveltekit 应用程序部署到 Netlify 时,构建中断并显示错误“@supabase/supabase-js”不提供名为“createClient”的导出怎么修?

如何解决将 Sveltekit 应用程序部署到 Netlify 时,构建中断并显示错误“@supabase/supabase-js”不提供名为“createClient”的导出怎么修?

当我尝试将带有 supabase 的 svelteKit 应用程序部署到 Netlify(使用适配器 netlify)时,Netlify 构建失败并显示以下错误

requested module '@supabase/supabase-js' does not provide an export named 'createClient'

但是,我可以在本地成功npm run build,没有任何错误

我还尝试重新安装 supabase 并更新我所有的 npm 包,并在 dependenciesdevDependencies 之间切换 supabase 包,但 Netlify 构建仍然失败。

在 Netlify 上构建时,以下是失败的部署日志:

 npm run build
7:54:27 PM: > ~Todo~@0.0.1 build /opt/build/repo
7:54:27 PM: > svelte-kit build
7:54:27 PM: (node:1389) ExperimentalWarning: The ESM module loader is experimental.
7:54:27 PM: vite v2.3.3 building for production...
7:54:28 PM: transforming...
7:54:42 PM: ✓ 96 modules transformed.
7:54:43 PM: rendering chunks...
7:54:59 PM: .svelte-kit/output/client/_app/manifest.json                               1.64kb
7:54:59 PM: .svelte-kit/output/client/_app/pages/index.svelte-cada8c67.js              0.14kb / brotli: 0.10kb
7:54:59 PM: .svelte-kit/output/client/_app/pages/__error.svelte-f4fa4b22.js            0.14kb / brotli: 0.10kb
7:54:59 PM: .svelte-kit/output/client/_app/chunks/singletons-bb9012b7.js               0.05kb / brotli: 0.05kb
7:54:59 PM: .svelte-kit/output/client/_app/pages/[slug].svelte-ec1023d5.js             0.14kb / brotli: 0.10kb
7:54:59 PM: .svelte-kit/output/client/_app/assets/start-0826e215.css                   0.18kb / brotli: 0.11kb
7:54:59 PM: .svelte-kit/output/client/_app/assets/vendor-119c9bb3.css                  7.66kb / brotli: 1.55kb
7:54:59 PM: .svelte-kit/output/client/_app/start-1a95caf6.js                           17.58kb / brotli: 5.58kb
7:54:59 PM: .svelte-kit/output/client/_app/pages/__layout.svelte-9141578b.js           49.85kb / brotli: 12.14kb
7:54:59 PM: .svelte-kit/output/client/_app/assets/pages/__layout.svelte-85885be8.css   86.98kb / brotli: 12.04kb
7:54:59 PM: .svelte-kit/output/client/_app/chunks/vendor-b335e5ae.js                   843.03kb / brotli: skipped (large chunk)
7:54:59 PM: 
7:54:59 PM: (!) Some chunks are larger than 500kb after minification. Consider:
7:54:59 PM: - Using dynamic import() to code-split the application
7:54:59 PM: - Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/guide/en/#outputmanualchunks
7:54:59 PM: - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
7:54:59 PM: vite v2.3.3 building SSR bundle for production...
7:54:59 PM: transforming...
7:55:05 PM: ✓ 41 modules transformed.
7:55:05 PM: rendering chunks...
7:55:05 PM: .svelte-kit/output/server/app.js   286.21kb
7:55:05 PM: Run npm run preview to preview your production build locally.
7:55:05 PM: 
7:55:05 PM: > Using @sveltejs/adapter-netlify
7:55:05 PM: > The requested module '@supabase/supabase-js' does not provide an export named 'createClient'
7:55:05 PM: file:///opt/build/repo/.svelte-kit/output/server/app.js:5
7:55:05 PM: import {createClient} from "@supabase/supabase-js";
7:55:05 PM:         ^^^^^^^^^^^^
7:55:05 PM: SyntaxError: The requested module '@supabase/supabase-js' does not provide an export named 'createClient'
7:55:05 PM:     at ModuleJob._instantiate (internal/modules/esm/module_job.js:92:21)
7:55:05 PM:     at async ModuleJob.run (internal/modules/esm/module_job.js:107:20)
7:55:05 PM:     at async Loader.import (internal/modules/esm/loader.js:179:24)
7:55:05 PM:     at async prerender (file:///opt/build/repo/node_modules/@sveltejs/kit/dist/chunks/index5.js:79:14)
7:55:05 PM:     at async Object.prerender (file:///opt/build/repo/node_modules/@sveltejs/kit/dist/chunks/index5.js:296:5)
7:55:05 PM:     at async adapt (file:///opt/build/repo/node_modules/@sveltejs/adapter-netlify/index.js:33:4)
7:55:05 PM:     at async adapt (file:///opt/build/repo/node_modules/@sveltejs/kit/dist/chunks/index5.js:322:2)
7:55:05 PM:     at async file:///opt/build/repo/node_modules/@sveltejs/kit/dist/cli.js:616:5
7:55:05 PM: npm ERR! code ELIFECYCLE
7:55:05 PM: npm ERR! errno 1
7:55:05 PM: npm ERR! ~Todo~@0.0.1 build: `svelte-kit build`
7:55:05 PM: npm ERR! Exit status 1
7:55:05 PM: npm ERR!
7:55:05 PM: npm ERR! Failed at the ~Todo~@0.0.1 build script.
7:55:05 PM: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
7:55:05 PM: npm ERR! A complete log of this run can be found in:
7:55:05 PM: npm ERR!     /opt/buildhome/.npm/_logs/2021-05-18T17_55_05_631Z-debug.log
7:55:05 PM: ​
7:55:05 PM: ────────────────────────────────────────────────────────────────
7:55:05 PM:   "build.command" Failed                                        
7:55:05 PM: ────────────────────────────────────────────────────────────────
7:55:05 PM: ​
7:55:05 PM:   Error message
7:55:05 PM:   Command Failed with exit code 1: npm run build
7:55:05 PM: ​
7:55:05 PM:   Error location
7:55:05 PM:   In build.command from netlify.toml:
7:55:05 PM:   npm run build
7:55:05 PM: ​
7:55:05 PM:   Resolved config
7:55:05 PM:   build:
7:55:05 PM:     command: npm run build
7:55:05 PM:     commandOrigin: config
7:55:05 PM:     publish: /opt/build/repo/build
7:55:05 PM:   functionsDirectory: /opt/build/repo/functions
7:55:06 PM: Caching artifacts
7:55:06 PM: Started saving node modules
7:55:06 PM: Finished saving node modules
7:55:06 PM: Started saving build plugins
7:55:06 PM: Finished saving build plugins
7:55:06 PM: Started saving pip cache
7:55:06 PM: Finished saving pip cache
7:55:06 PM: Started saving emacs cask dependencies
7:55:06 PM: Finished saving emacs cask dependencies
7:55:06 PM: Started saving maven dependencies
7:55:06 PM: Finished saving maven dependencies
7:55:06 PM: Started saving boot dependencies
7:55:06 PM: Finished saving boot dependencies
7:55:06 PM: Started saving rust rustup cache
7:55:06 PM: Finished saving rust rustup cache
7:55:06 PM: Started saving go dependencies
7:55:06 PM: Finished saving go dependencies
7:55:08 PM: Build Failed due to a user error: Build script returned non-zero exit code: 2
7:55:08 PM: Creating deploy upload records
7:55:08 PM: Failing build: Failed to build site
7:55:08 PM: Failed during stage 'building site': Build script returned non-zero exit code: 2
7:55:08 PM: Finished processing build request in 1m6.448211496s

有人可以建议修复吗?

解决方法

此答案可能因您拥有的 SvelteKit 版本而异。

尝试将以下内容添加到 svelte.config.js

import preprocess from 'svelte-preprocess'
import adapterNetlify from '@sveltejs/adapter-netlify'
const dev = process.env.NODE_ENV === 'development'

/** @type {import('@sveltejs/kit').Config} */
const config = {
    preprocess: preprocess(),kit: {
        adapter: adapterNetlify(),target: '#svelte',vite: {
            ssr: {
                noExternal: dev ? [] : ['@supabase/supabase-js']
            },}
    }
};

export default config

有关更多信息,请参阅:

https://github.com/vitejs/vite/issues/2579

https://github.com/sveltejs/kit/issues/904

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?