que tiene, como siempre, una serie de opciones, dependiendo de sus necesidades.
- utilice el Runtime Preferences para almacenar en un PreferenceStore con un PreferenceInitializer adecuado. Una API extensa y extensa con bastante pensamiento. Las preferencias no están expuestas por defecto al usuario o al administrador, por lo que deberá realizar un trabajo para exponer una página de preferencias o escribir en un archivo de propiedades.
Por menos trabajo/menos avanzada, especialmente si usted no tiene acceso a las preferencias de Eclipse (por ejemplo, del lado del servidor OSGi):
- conjunto como una propiedad del sistema, en el RCP.ini. No es modificable por el usuario después del lanzamiento, requiere acceso al archivo RCP.ini (eclipse.ini), que puede ser posible especialmente si no está contribuyendo con el IDE.
- establecer como una propiedad del sistema, como un argumento en el acceso directo. Depende del usuario que use el atajo. El acceso directo especializado debe generarse en el momento de la instalación.
Si la accesibilidad del sistema de ficheros es realmente importante, entonces me plantearía usando uno de los métodos anteriores para establecer un directorio etc
, y la deje que sus paquetes generan propiedades por defecto los archivos en el directorio etc
si no existen en el primer uso. Esto es básicamente hacer rodar su propia tienda de preferencia, por lo que si tiene un paquete de preferencias de acceso, es mejor que lo haga. Este bastante viejo User Settings FAQ también puede ser útil.
Recuerdo una entrevista de Erich Gamma (como en Gang of Four, y JDT technical lead) en la que dice que hay alrededor de siete mecanismos de preferencia diferentes, y que nunca supo cuál usar.
¿Puede el usuario cambiar la configuración, o están relativamente codificados? –
Puede cambiar la configuración de forma programática, pero debe dar al usuario una manera de hacerlo. (Opción de preferencia de la GUI como eclipse, línea de cmd arg, etc.) Properties.setProperty (clave, val), seguido de Properties.store (secuencia, encabezado) –