Development Tip

composer bower-asset / jquery를 통해 yii2를 업데이트 할 수 없습니다. 찾을 수 없습니다.

yourdevel 2021. 1. 10. 19:39
반응형

composer bower-asset / jquery를 통해 yii2를 업데이트 할 수 없습니다. 찾을 수 없습니다.


작곡가를 통해 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-pluginYii2 문서의 간단한 지침을 따르기 만하면 됩니다.

자산 패키지 저장소 사용

이 방법은 NPM 또는 Bower 패키지가 필요한 대부분의 프로젝트 요구 사항을 충족합니다.

참고 : 2.0.13 이후 기본 및 고급 애플리케이션 템플릿은 모두 기본적으로 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방문하십시오 .


If you don't need the update for bower-asset, you can require yidas/yii2-composer-bower-skip before yiisoft/yii2. in composer.json file:

"require": {
    "php": ">=5.4.0",
    "yidas/yii2-composer-bower-skip": "~2.0.0",
    "yiisoft/yii2": "~2.0.5",
    "yiisoft/yii2-bootstrap": "~2.0.0"
}

After that, you can update Composer smoothly without bower-asset.

See https://github.com/yidas/yii2-composer-bower-skip


As described in YII2 repository documentation: https://asset-packagist.org/site/about We can solve this problem by adding aliases on those folders in our config. It will looks like that:

   $config = [
      ...
     'aliases' => [
        '@bower' => '@vendor/bower-asset',
        '@npm'   => '@vendor/npm-asset',
     ],
     ...
  ];

It works perfectly!


Simple and clean solution:

In composer.json just replace the bower-asset/jquery line with: "yidas/yii2-bower-asset":"*"


I propose we add also bower-asset/datatables to the yidas/yii2-bower-asset


My Problems with accepted solution of adding fxp/composer-asset-plugin are that the plugin is significantly slowing down the composer system, impacts everywhere, isn't always portable across operating systems and environments, has errors with PHP7.2 relating to inconsistent method names. So, I prefer my quicker to develop, faster at runtime, more local, and more compatible solution.

ReferenceURL : https://stackoverflow.com/questions/25882271/cannot-update-yii2-via-composer-bower-asset-jquery-could-not-be-found

반응형