phpro / grumphp

A PHP code-quality tool
MIT License
4.14k stars 430 forks source link

Uncaught exception 'ReflectionException' in travis ci #204

Closed poteirard closed 7 years ago

poteirard commented 7 years ago
Q A
Branch master for features and deprecations
Bug? yes
New feature? no
Question? yes
Documentation? no
Related tickets -

I'm trying to configure travis to run grumphp without success... I get the following error:

PHP Fatal error:  Uncaught exception 'ReflectionException' with message 'Class GrumPHP\Task\Phpcpd does not exist' in /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php:845

Stack trace:

#0 /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php(845): ReflectionClass->__construct('GrumPHP\\Task\\Ph...')

#1 /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php(418): Symfony\Component\DependencyInjection\ContainerBuilder->createService(Object(Symfony\Component\DependencyInjection\Definition), 'task.phpcpd')

#2 /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php(904): Symfony\Component\DependencyInjection\ContainerBuilder->get('task.phpcpd', 1)

#3 /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php(901): Symfony\Component\DependencyInjection\ContainerBuilder->resolveServices(Object(Symfony\ in /home/travis/build/trovit/php-code-validator/vendor/symfony/dependency-injection/ContainerBuilder.php on line 845

My configuration

# grumphp.yml
parameters:
    git_dir: .
    bin_dir: vendor/bin
    tasks:
        phplint: ~
        composer: ~
        git_blacklist:
            keywords:
                - "die("
                - "exit;"
            triggered_by: [php]
        git_conflict: ~
        jsonlint: ~
        phpcpd:
            directory: '.'
            exclude: ['vendor']
            fuzzy: false
            min_lines: 5
            min_tokens: 70
            triggered_by: ['php']
        phpcs:
            standard: PSR2
            show_warnings: true
            tab_width: ~
            encoding: ~
            ignore_patterns:
                - "Sniffs/"
            sniffs: []
            triggered_by: [php]
        securitychecker: ~
        yamllint: ~
        phpunit: ~
# travis.yml
language: php

php:
    - 5.6
    - 7.0

before_install:
    - composer global require hirak/prestissimo
    - composer install

script:
    - ./vendor/bin/grumphp run
# composer.json
{
    "name": "trovit/php-code-validator",
    "description": "Provides a basic system to organize and execute php code validators",
    "license": "MIT",
    "authors": [
        {
            "name": "Trovit",
            "email": "github@trovit.com"
        }
    ],
    "require": {
        "trovit/temporary-filesystem": "^1.0",
        "squizlabs/php_codesniffer": "3.0.x-dev",
        "jakub-onderka/php-parallel-lint": "^0.9.2",
        "symfony/yaml": "^3.1"
    },
    "require-dev": {
        "phpunit/phpunit": "^5.5",
        "phpro/grumphp": "^0.9.5",
        "sebastian/phpcpd": "^2.0",
        "phpmd/phpmd": "^2.4",
        "sensiolabs/security-checker": "^3.0"
    },
    "autoload": {
        "psr-4": {
            "Trovit\\PhpCodeValidator\\": "src"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Trovit\\PhpCodeValidator\\Tests\\Functional\\": "tests/functional",
            "Trovit\\PhpCodeValidator\\Tests\\Unit\\": "tests/unit"
        }
    }
}

If I run ./vendor/bin/grumphp run in my local enviroment it works.

Could you help me?

veewee commented 7 years ago

Hi @poteirard,

This issue has been fixed in #201. It is fixed on master and will be released in 0.9.6 hopefully this week.