---
title: "Feature: #82869 - Replace @inject with @TYPO3\\CMS\\Extbase\\Annotation\\Inject"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:feature-82869"
source: "Changelog/9.0/Feature-82869-ReplaceInjectWithTYPO3CMSExtbaseAnnotationInject.rst"
typo3-version: "9.0"
typo3-major: 9
type: "feature"
issue: 82869
forge: "https://forge.typo3.org/issues/82869"
tags: ["PHP-API", "ext:extbase", "FullyScanned"]
rendered: "2026-09-24T21:45:06+00:00"
---

# Feature: #82869 - Replace @inject with @TYPO3\\CMS\\Extbase\\Annotation\\Inject {#feature-82869}

See [forge#82869](https://forge.typo3.org/issues/82869)

## Description {#description}

As a successor to the `@inject` annotation, the doctrine annotation
`@TYPO3\CMS\Extbase\Annotation\Inject` has been introduced.

Example:

```php
/**
 * @TYPO3\CMS\Extbase\Annotation\Inject
 * @var Foo
 */
public $property;
```

Doctrine annotations are actual defined classes, therefore you can also use the annotation with a use statement.

Example:

```php
use TYPO3\CMS\Extbase\Annotation\Inject;
```

```php
/**
 * @Inject
 * @var Foo
 */
public $property;
```

Used annotations can also be aliased which the core will most likely be using a lot in the future.

Example:

```php
use TYPO3\CMS\Extbase\Annotation as Extbase;
```

```php
/**
 * @Extbase\Inject
 * @var Foo
 */
public $property;
```

## Impact {#impact}

In 9.x there is no actual impact. Both the simple `@inject` and
`@TYPO3\CMS\Extbase\Annotation\Inject` can be used side by side.
However, `@inject` is deprecated in 9.x and will be removed in version 10.
