Libraries.json
Il s'agit d'un fichier manifeste contenant les références directes aux bibliothèques, explicitement déclarées par le développeur de l'application ou de la bibliothèque. Il est valide dans le répertoire principal d'une application et à la racine d'un projet de bibliothèque. Une même bibliothèque ne peut pas être référencée avec deux espaces de noms différents au sein d'un même projet. Libraries.json déposer.
Le fichier se compose de trois sections :
La première section
referencescontient un dictionnaire JSON dont la clé est l'espace de noms de la référence de bibliothèque et dont les valeurs sont des objets qui décrivent les détails de la référence.$typeLe terme « membre » est utilisé pour distinguer les différents types de référence.La deuxième section
placeholderOverridescontient un dictionnaire JSON où les clés sont les noms des espaces réservés et les valeurs sont les identifiants de bibliothèque ou les modèles qui remplacent l'espace réservé.La troisième section
libraryParameterscontient un dictionnaire JSON de paires clé/valeur. Les clés du dictionnaire externe peuvent contenir les valeurs suivantes :Un espace réservé précédé d'un signe dièse (
#) pour faire référence à la bibliothèque d'espace réservéUN
LibraryIdpour faire référence à la bibliothèque géréeUn chemin relatif pour référencer le projet de bibliothèque
Les dictionnaires internes contiennent les paramètres de la bibliothèque comme clé et les valeurs respectives comme valeur.
Membre | Valable pour | Requis | Valeur par défaut | Description |
|---|---|---|---|---|
| Oui | Type de référence de bibliothèque
| ||
| Tous |
| Si la valeur est | |
| Tous |
| Si la valeur est | |
| Tous |
| Si la valeur est | |
| Tous |
| Si la valeur est | |
|
| Oui | Le chemin d'accès à la bibliothèque, par rapport à l'emplacement du fichier actuel | |
|
| Oui | L'identifiant de la bibliothèque gérée, dont la partie version peut être un modèle. Le format du modèle est défini dans la section Référencement des bibliothèques. | |
|
|
| Si la valeur est Si la valeur est | |
|
| Oui | L'espace réservé pour une bibliothèque référencée. Il est résolu en l'identifiant de la bibliothèque via la résolution d'espace réservé. | |
|
|
| Facultatif : si cette option est activée, tous les points d’utilisation utiliseront cette version (ou ce modèle de version) de la bibliothèque. |
{
"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"
}
}
}Référencement des bibliothèques
Tout comme dans CODESYS 3, bibliothèques dans CODESYS 4 Les bibliothèques peuvent être référencées via des espaces réservés, des identifiants de bibliothèque exacts ou des identifiants de bibliothèque avec des modèles de version. De plus, les bibliothèques sources disponibles en tant que bibliothèques modifiables peuvent également être référencées via leur chemin relatif vers le répertoire racine. Libraries.json déposer,
Modèle de version
Exemple de syntaxe | Description |
|---|---|
1.2.3.4 | Correspond exactement à la version spécifiée 1.2.3.4 |
1.2.3 | Cela correspond exactement à la version 1.2.3 ou 1.2.3.0. |
* x X | La dernière version publiée est disponible, mais il n'existe pas de versions préliminaires. |
1.2.* 1.2.*.* 1.2.x 1.2.X | Le dernier correctif publié pour la version 1.2 |
>=1.2.3-alpha.2 | Version 1.2.3 ou ultérieure, y compris les versions préliminaires 1.2.3 à partir de la version alpha.2 et supérieures. |
1.0.0 - 2.0.0 1 - 2 >=1.0.0 <=2.0.0 | Compatible avec les versions de 1.0.0.0 à 2.0.0.0 incluse, à l'exclusion des versions préliminaires. Remarque : Les plages contenant un tiret (« - ») nécessitent des espaces autour de l’opérateur afin de les distinguer des indicateurs de préversion : 1.0.0-2.0.0 ≠ 1.0.0 - 2.0.0
|
>=1,2,3 <1,5 | Accepte toutes les versions à partir de 1.2.3, à l'exception de la version 1.5. |
>=1,0 | Version minimale 1.0 (incluse) |
≥ 1,0 < 1,5 || ≥ 1,5,1 < 2 | Toutes les versions 1.x, à l'exception de la version 1.5.0. |