Libraries.json
Este es un archivo de manifiesto que contiene las referencias directas a la biblioteca que han sido declaradas explícitamente por el desarrollador de la aplicación o biblioteca. Es válido en el directorio principal de una aplicación y en el directorio raíz de un proyecto de biblioteca. La misma biblioteca no puede ser referenciada con dos espacios de nombres diferentes dentro del mismo directorio. Libraries.json archivo.
El archivo consta de tres secciones:
La primera sección
referencesContiene un diccionario JSON cuya clave es el espacio de nombres de la referencia de la biblioteca y cuyos valores son objetos que describen los detalles de la referencia.$typeEl término "miembro" se utiliza para distinguir entre los diferentes tipos de referencia.La segunda sección
placeholderOverridesContiene un diccionario JSON donde las claves son los nombres de los marcadores de posición y los valores son los ID de las bibliotecas o los patrones que anulan el marcador de posición.La tercera sección
libraryParametersContiene un diccionario JSON de pares clave/valor. Las claves del diccionario externo pueden contener los siguientes valores:Un marcador de posición precedido por un signo de almohadilla (
#) para hacer referencia a la biblioteca de marcadores de posiciónA
LibraryIdpara hacer referencia a la biblioteca administradaUna ruta relativa para hacer referencia al proyecto de la biblioteca
Los diccionarios internos contienen los parámetros de la biblioteca como clave y los valores correspondientes como valor.
Miembro | Válido para | Requerido | Valor predeterminado | Descripción |
|---|---|---|---|---|
| Sí | Tipo de referencia de biblioteca
| ||
| Todo |
| Si el valor es | |
| Todo |
| Si el valor es | |
| Todo |
| Si el valor es | |
| Todo |
| Si el valor es | |
|
| Sí | La ruta de la biblioteca, en relación con la ubicación actual | |
|
| Sí | El ID de la biblioteca administrada, donde la parte de la versión puede ser un patrón. El formato del patrón se define en la sección Bibliotecas de referencia. | |
|
|
| Si el valor es Si el valor es | |
|
| Sí | El marcador de posición para una biblioteca referenciada. Se resuelve al ID de la biblioteca mediante la resolución del marcador de posición. | |
|
|
| Opcional: Si esta opción está habilitada, todos los POU utilizarán esta versión (o patrón de versión) de la biblioteca. |
{
"references" : {
"TESTEXTERNALS": {
"$type": "RelativePath",
"path": "../../../TestLib.fbslib/",
"optional": true,
"linkAllContent": true
},
"SysTime": {
"$type": "Placeholder",
"placeholder": "SysTime"
},
"Standard": {
"$type": "ManagedLibrary",
"libraryId": "Standard, 3.5.18.0 (System)"
},
"AcmeTools": {
"$type": "ManagedLibrary",
"libraryId": "Acme Tools, 3.5.* (Acme International Inc.)",
"publishSymbolsInContainer": true, // comments and trailing commas are tolerated
},
"WsCompiled": {
"$type": "RelativePath",
"path": "../../../pipeline-assets/Some library.compiled-library",
"noHash": true
}
},
"placeholderOverrides": {
"SysTime" : "SysTime, 3.5.17.0 (System)",
"OtherPlaceholder" : "SomeToolsLib, >=1.2.0 (SomeTools Company)"
},
"libraryParameters": {
"#SysTime": {
"ParamOne": "250",
"ParamTwo": "true"
},
"Acme Tools, 3.5.* (Acme International Inc.)": {
"ParamOne": "125"
},
"../../../TestLib.fbslib/": {
"ParamThree": "125"
}
}
}Bibliotecas de referencia
Al igual que en CODESYS 3, bibliotecas en CODESYS 4 Se puede hacer referencia a través de marcadores de posición, identificadores de biblioteca exactos o identificadores de biblioteca con patrones de versión. Además, las bibliotecas de origen que están disponibles como bibliotecas editables también se pueden referenciar a través de su ruta relativa a la Libraries.json archivo,
Patrón de versión
Sintaxis de ejemplo | Descripción |
|---|---|
1.2.3.4 | Corresponde exactamente a la versión especificada 1.2.3.4. |
1.2.3 | Esto corresponde exactamente a la versión 1.2.3 o 1.2.3.0. |
* x X | La última versión disponible, pero no hay versiones preliminares. |
1.2.* 1.2.*.* 1.2.x 1.2.X | El último nivel de parche publicado de la versión 1.2 |
>=1.2.3-alfa.2 | Versión 1.2.3 o posterior, incluidas las versiones preliminares de 1.2.3 de alpha.2 y superiores. |
1.0.0 - 2.0.0 1 - 2 >=1.0.0 <=2.0.0 | Compatible con las versiones desde la 1.0.0.0 hasta la 2.0.0.0 inclusive, pero excluyendo las versiones preliminares. Nota: Los rangos con "-" requieren espacios alrededor del operador para distinguirlos de los indicadores de prelanzamiento: 1.0.0-2.0.0 != 1.0.0 - 2.0.0
|
>=1,2,3 <1,5 | Admite cualquier versión desde la 1.2.3 en adelante, pero excluyendo la 1.5. |
>=1.0 | Versión mínima 1.0 (inclusive) |
>=1.0 <1.5||>=1.5.1 <2 | Todas las versiones 1.x, excepto la versión 1.5.0. |