composerでyii2を更新してから、古いベータ版に戻しました。
これが私の作曲家のエラーです:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package bower-asset/jquery could not be found in any version, there may be a typ
o in the package name.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setti
ng
see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
Packagistでbower-asset/jqueryを検索しようとしましたが、見つかりませんでした。
助けてくれてありがとう :)
最後に修正し、UPGRADE.mdドキュメントの手順に従ってください
Composer=を使用してYiiをアップグレードする場合、composer-asset-pluginをインストールするために、最初に次のコマンドを(すべて一度だけ)実行する必要があります。
composer global require "fxp/composer-asset-plugin:^1.2.0"
(最新バージョンについては http://www.yiiframework.com/doc-2.0/guide-start-installation.html#installing-from-composer を参照してください。)
次のコードをプロジェクトのcomposer.json
ファイルに追加する必要がある場合もあります。
"extra": {
"asset-installer-paths": {
"npm-asset-library": "vendor/npm",
"bower-asset-library": "vendor/bower"
}
}
これが役立つことを願っています:)
私にとっては、フォルダ〜/ .composerを削除してコマンドを実行するのに役立ちます:
php composer.phar global require "fxp/composer-asset-plugin:1.*"
その後、もう一度実行します
php composer.phar update
よりクリーンなソリューションを見つけました。 composer.jsonファイルに次のリポジトリを追加するだけです
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
そして魔法を見ます
fxp/composer-asset-plugin
を使用したくない場合は、Yii2 documentation からのこれらの簡単な指示に従うだけです。
asset-packagistリポジトリを使用する
この方法は、NPMまたはBowerパッケージを必要とする大部分のプロジェクトの要件を満たします。
注:2.0.13以降、BasicおよびAdvancedの両方のアプリケーションテンプレートは、デフォルトでasset-packagistを使用するように事前設定されているため、このセクションはスキップできます。
プロジェクトのcomposer.jsonで、次の行を追加します。
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
}
]
アプリケーション構成で@npmおよび@bowerエイリアスを調整します。
$config = [
...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
...
];
asset-packagist.org にアクセスして、その仕組みを確認してください。
Bower-assetの更新が必要ない場合は、yidas/yii2-composer-bower-skip
前 yiisoft/yii2.
in composer.json
ファイル:
"require": {
"php": ">=5.4.0",
"yidas/yii2-composer-bower-skip": "~2.0.0",
"yiisoft/yii2": "~2.0.5",
"yiisoft/yii2-bootstrap": "~2.0.0"
}
その後、Composer= bower-assetなしでスムーズに更新できます。
YII2リポジトリのドキュメントで説明されているように: https://asset-packagist.org/site/about 構成内のこれらのフォルダーにエイリアスを追加することでこの問題を解決できます。次のようになります。
$config = [
...
'aliases' => [
'@bower' => '@vendor/bower-asset',
'@npm' => '@vendor/npm-asset',
],
...
];
完全に機能します!
シンプルでクリーンなソリューション:
Composer.jsonでは、bower-asset/jqueryの行を「yidas/yii2-bower-asset」: "*"に置き換えるだけです。
提案します yidas/yii2-bower-assetにbower-asset/datatablesも追加します
承認された解決策に関する私の問題 fxp/composer-asset-pluginを追加することは、プラグインがcomposerシステム、どこにでも影響を与え、常に移植性があるわけではないオペレーティングシステムと環境全体で、一貫性のないメソッド名に関連するPHP7.2のエラーがあるので、開発が早く、実行時が速く、よりローカルで互換性のあるソリューションが望ましいです。