Can't place a custom block After adding a block file to src/Plugin/Block I can't add the block on the Block Layout admin page. When I filter by block name I can see it, but then when I try to place it I can't get to the configure block screen (pressing the 'Place block' button produces no effect).
I do not get any errors.

What could be the reason for such a behaviour?

The block file contents:

    &lt;?php

namespace Drupal\Core\Block\BlockBase;
use Drupal\Core\Link;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\Core\Session\AccountInterface;
use Drupal\core\Url;
use Symfony\Component\DependencyInjection\ContainerInterface;

/**
 * Provides a block with a link to start the toru.
 * 
 * @Block(
 *    id = "iai_tour_link",
 *    admin_label = @Translation("Link for the IAI Product Guide tour"),
 *    category = @Translation("Links"),
 *    context = {
 *       "node" = @ContextDefinition(
 *         "entity:node",
 *          label = @Translation("Current Node")
 *        )
 *     }
 *   )
 */
class TourLinkBlock extends BlockBase implements ContainerFactoryPluginInterface{
    /**
     * The current user.
     * 
     * @var \Drupal\Core\Session\AccountInterface;
     * 
     */
    protected $currentUser;

    /**
     * Constructs an TourLinkBlock object.
     * 
     * @param array $configuration
     * A configuration array containing information about the plugin instance.
     * @param string $plugin_id
     * The plugin_id for the plugin instance.
     * @param mixed $plugin_definition
     * The plugin implementation definition.
     */
    public function __construct(array $configuration, $plugin_id, $plugin_definition, AccountInterface $current_user){
        parent::__construct($configuration, $plugin_id, $plugin_definition);
        $this-&gt;currentUser = $current_user;
    }

    /**
     * {@inheritdoc}
     */
    public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition){
        return new static(
            $configuration,
            $plugin_id,
            $plugin_definition,
            $container-&gt;get('current_user')
        );
    }

    public function build(){

        $node = $this-&gt;getContextValue('node');
        if ($this-&gt;currentUser-&gt;hasPermission('access tour') &amp;&amp; $node-&gt;getType() == 'book'){
            $url = Url::fromRoute('&lt;current&gt;', array(), array('query' =&gt; array('tour' =&gt; 1)));
            $build['tour_link']= [
                '#type' =&gt; 'markup',
                '#markup' =&gt; Link::fromTextAndUrl(t('Take the tour!'), $url)-&gt;toString(),
            ];
            $build['#attached']['library'][] = 'tour/tour';
            return $build;
        }
    }
}
Fix the namespaces:

delete:
namespace Drupal\Core\Block\BlockBase;

add:
namespace Drupal\MY_COOL_MODULE\Plugin\Block;
use Drupal\Core\Block\BlockBase;