PHP工匠在laravel中迁移时出错

问题描述

从laravel 4到7,我一直使用laravel项目。但这是我第一次在新下载的laravel中迁移数据库时遇到的错误。这是我迁移时的错误

        $e = $event->getThrowable();

        if (!$event->hasResponse()) {
            $this->finishRequest($request,$type);

            throw $e;
        }

        $response = $event->getResponse();

        // the developer asked for a specific status code
        if (!$event->isAllowingCustomresponseCode() && !$response->isClientError() && !$response->isServerError() && !$response->isRedirect()) {
            // ensure that we actually have an error response
            if ($e instanceof HttpExceptionInterface) {
                // keep the HTTP status code and headers
                $response->setStatusCode($e->getStatusCode());
                $response->headers->add($e->getHeaders());
            } else {
                $response->setStatusCode(500);
            }
        }

        try {
            return $this->filterResponse($response,$request,$type);
        } catch (\Exception $e) {
            return $response;
        }
    }

    /**
     * Returns a human-readable string for the specified variable.
     */
    private function varToString($var): string
    {
        if (\is_object($var)) {
            return sprintf('an object of type %s',\get_class($var));
        }

        if (\is_array($var)) {
            $a = [];
            foreach ($var as $k => $v) {
                $a[] = sprintf('%s => ...',$k);
            }

            return sprintf('an array ([%s])',mb_substr(implode(',',$a),255));
        }

        if (\is_resource($var)) {
            return sprintf('a resource (%s)',get_resource_type($var));
        }

        if (null === $var) {
            return 'null';
        }

        if (false === $var) {
            return 'a boolean value (false)';
        }

        if (true === $var) {
            return 'a boolean value (true)';
        }

        if (\is_string($var)) {
            return sprintf('a string ("%s%s")',mb_substr($var,255),mb_strlen($var) > 255 ? '...' : '');
        }

        if (is_numeric($var)) {
            return sprintf('a number (%s)',(string) $var);
        }

        return (string) $var;
    }
}

错误

Stack trace:
#0 D:\Supporting Enterprises\Projects\Laravel Projects\SuperpagesAPI\artisan(18): require()
#1 {main}
  thrown in D:\Supporting Enterprises\Projects\Laravel Projects\SuperpagesAPI\vendor\autoload.PHP on line 7

Fatal error: Uncaught Error: Class 'ComposerAutoloaderInitbe984857c53a573c5f216d0eb36fe0e7' not found in D:\Supporting Enterprises\Projects\Laravel Projects\SuperpagesAPI\vendor\autoload.PHP:7
Stack trace:
#0 D:\Supporting Enterprises\Projects\Laravel Projects\SuperpagesAPI\artisan(18): require()
#1 {main}
  thrown in D:\Supporting Enterprises\Projects\Laravel Projects\SuperpagesAPI\vendor\autoload.PHP on line 7

我被困在这里。但是在此之前,我从IIS管理器启动IIS。我不知道这是否会生效。之所以打开它,是因为我最终运行了一个C#Web应用程序。

请帮助我这些人。

解决方法

这似乎是作曲家问题。只需尝试运行以下bash脚本即可:

composer dump-autoload