Akeneo 3.1.6 CEを手動でインストールした後、webpackを実行するとエラーが発生します。 以下のバージョン情報:
operating system: MacOSX
php: 7.2.13
node: v10.16.0
yarn: 1.16.0
mysql: 5.7
エラー:
$ yarn run webpack
yarn run v1.16.0
$ yarn requirements && NODE_PATH=node_modules webpack --config $npm_package_config_source/webpack.config.js
$ node $npm_package_config_source/frontend/build/check-requirements.js
Checking PIM frontend requirements
Starting webpack from /Users/liamtoohey/src/project-akeneo in dev mode
Executing pre-build scripts
(node:19219) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
$ node $npm_package_config_source/frontend/build/update-extensions.js
$ node $npm_package_config_styles
Updating form extensions.json
/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/frontend/build/update-extensions.js:76
const mergedExtensions = Object.entries(merged.extensions).map(([code, extension]) => {
^
TypeError: Cannot convert undefined or null to object
at Function.entries (<anonymous>)
at mergeExtensions (/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/frontend/build/update-extensions.js:76:37)
at Object.<anonymous> (/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/frontend/build/update-extensions.js:110:26)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:829:12)
at startup (internal/bootstrap/node.js:283:19)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
/Users/liamtoohey/src/project-akeneo/node_modules/webpack-shell-plugin/lib/index.js:168
throw error;
^
1
フォーム拡張が欠落しているように見えますか? カスタムコードのないバニラインスタンスがあるため、これをデバッグするのに苦労しています。 私が実行したFEビルド手順に関しては、こちらのガイドに従っていますhttps://docs.akeneo.com/3.1/install_pim/docker/installation_docker.html
インストールコマンドは問題なく完了しました。DBも見栄えがします。 奇妙に思えるdocker経由でセットアップするときに、このエラーを再現できませんでした。
こんにちは! このエラーはどのステップで発生しますか? (またはどのコマンドで?)
どのシステムを使用していますか? (dockerまたは別の?)
こんにちは@Doodoune ! MacOSXを使用してこのプロジェクトをローカルにセットアップしています。 私のローカルセットアップはMAMPに似ていますが、PHP /ヤーン/ノードなどを管理するためにbrewを使用しています。ここで指定されているようにyarn run webpack
を実行すると、このエラーが発生しますhttps://docs.akeneo.com/3.1/install_pim /manual/installation_ce_archive.html#initializing -akeneo
このPRhttps ://github.com/akeneo/pim-community-dev/pull/9607で行われた変更を見ると、ノードが/js/extensions.json
データをダンプしていないようです-おそらくエラーに関連しています。 yarn install
ようなコマンドは私にとっては問題なく実行されていますが、ステップがありませんか?
@Doodoune興味深いアップデートを
私のakeneoプロジェクトは現在src
ディレクトリにあります。 私が経験しているエラーは、 web/js/require-paths.js
から読み取られた誤ったファイルパスが原因のようです。 私のweb/js/require-paths.js
コンテンツの例:
module.exports = ["/Users/liamtoohey/src/project-akeneo/vendor/doctrine/doctrine-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/doctrine/doctrine-cache-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/sensio/framework-extra-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/symfony/monolog-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/symfony/symfony/src/Symfony/Bundle/SecurityBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/symfony/swiftmailer-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/symfony/symfony/src/Symfony/Bundle/TwigBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/doctrine/doctrine-fixtures-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/friendsofsymfony/jsrouting-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/friendsofsymfony/rest-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/liip/imagine-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/ConfigBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/DataGridBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/FilterBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/TranslationBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/ConnectorBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/ClassificationBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/ElasticsearchBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/BatchBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/BatchQueueBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/BufferBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/FileStorageBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/MeasureBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/StorageUtilsBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/doctrine/doctrine-migrations-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/friendsofsymfony/oauth-server-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/ApiBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/oneup/flysystem-bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/PimFilterBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/PimDataGridBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/UserManagement/Bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Channel/Bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Structure/Bundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/DashboardBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/AnalyticsBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/ImportExportBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/InstallerBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/NotificationBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/UIBundle",
"/Users/liamtoohey/src/project-akeneo/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/CatalogVolumeMonitoringBundle"]
ご覧のとおり、プロジェクトは/Users/liamtoohey/src
ます。 このコマンドは最初のsrc
文字列までの文字のみを削除するため、これは以前にリンクされたregexコマンドで問題を引き起こすようです。この場合、Akeneo内のsrc
ディレクトリではなく、私の作業ディレクトリです。 。 いくつかの例はここにあります: https :
このため、ここのdir
変数のファイルパスhttps://github.com/akeneo/pim-community-dev/blob/v3.1.6/frontend/build/update-extensions.js#L60外観お気に入り
...
src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/ConfigBundle
src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/DataGridBundle
src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/FilterBundle
src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle
src/project-akeneo/vendor/akeneo/pim-community-dev/src/Oro/Bundle/TranslationBundle
...
それらがどのように見えるべきか:
...
/Users/liamtoohey/src/vendor/akeneo/pim-community-dev/src/Oro/Bundle/ConfigBundle
/Users/liamtoohey/src/vendor/akeneo/pim-community-dev/src/Oro/Bundle/DataGridBundle
/Users/liamtoohey/src/vendor/akeneo/pim-community-dev/src/Oro/Bundle/FilterBundle
/Users/liamtoohey/src/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle
/Users/liamtoohey/src/vendor/akeneo/pim-community-dev/src/Oro/Bundle/TranslationBundle
...
@Doodouneこれに関する更新はありますか? この問題の原因となっている正規表現を修正するためにPRを作成しました🙂
同じ問題があります。 src /ディレクトリとform_extensions内にあるパッケージ(composerからインストール)を作成しました。 update-extensions.jsにこの正規表現があるため、これらの拡張機能は読み込まれません。 直してもらえますか? それかもしれません
@liamjtooheyはこの正規表現を修正し、彼のPRを受け入れるのに十分です。
3.2でも壊れた
@liamjtooheyねえ、あなたの貢献はここでマスターにマージされました:#10568ありがとう!
@tamarasaurusこの問題はAkeneo3.2にバックポートされるべきではありませんか?
最も参考になるコメント
@Doodoune興味深いアップデートを
私のakeneoプロジェクトは現在
src
ディレクトリにあります。 私が経験しているエラーは、web/js/require-paths.js
から読み取られた誤ったファイルパスが原因のようです。 私のweb/js/require-paths.js
コンテンツの例:ご覧のとおり、プロジェクトは
/Users/liamtoohey/src
ます。 このコマンドは最初のsrc
文字列までの文字のみを削除するため、これは以前にリンクされたregexコマンドで問題を引き起こすようです。この場合、Akeneo内のsrc
ディレクトリではなく、私の作業ディレクトリです。 。 いくつかの例はここにあります: https :このため、ここの
dir
変数のファイルパスhttps://github.com/akeneo/pim-community-dev/blob/v3.1.6/frontend/build/update-extensions.js#L60外観お気に入りそれらがどのように見えるべきか: