# Classpath Variable Initializers

###### Identifier:

org.eclipse.jdt.core.classpathVariableInitializer

###### Since:

2.0

###### Description:

This extension point allows clients to contribute custom classpath variable initializers, which are used to lazily bind classpath variables.

###### Configuration Markup:

<!ELEMENT extension (classpathVariableInitializer*)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

- point - a fully qualified identifier of the target extension point
- id - an optional identifier of the extension instance
- name - an optional name of the extension instance

<!ELEMENT classpathVariableInitializer EMPTY>

<!ATTLIST classpathVariableInitializer

variable CDATA #REQUIRED

class CDATA #REQUIRED

deprecated CDATA #IMPLIED

readOnly (true | false) >

- variable - a unique name identifying the variable for which this initializer will be activated.
- class - the class that implements this variable initializer. This class must implement a public subclass of `org.eclipse.jdt.core.ClasspathVariableInitializer` with a public 0-argument constructor.
- deprecated - String explaining the reason why the associated variable is deprecated
- readOnly - Indicates that the associated variable cannot be modified

###### Examples:

Example of a declaration of a `ClasspathVariableInitializer` for a classpath variable named "FOO":

    <extension point="org.eclipse.jdt.core.classpathVariableInitializer">
       <classpathVariableInitializer
          variable="FOO"
          class="com.example.CPVInitializer"/>
    </extension>

Copyright (c) 2000, 2004 IBM Corporation and others.
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html/ SPDX-License-Identifier: EPL-2.0