2017-10-15 12 views
1

Je travaille sur l'ajout de fichier CSS dans un fichier Fxml comme ci-dessous.JavaFx Scénariste: CSS ne se charge pas dans ubuntu mais travaille sous Windows

<BorderPane maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minHeight="-Infinity" minWidth="-Infinity" prefHeight="700.0" prefWidth="1200.0" stylesheets="@../../../resources/css/home.css" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.ctc.controller.SupplierUpdateController"> 

Comme vous pouvez le voir, j'ai ajouté le css comme stylesheets="@../../../resources/css/home.css"

Cela a fait en utilisant constructeur de la scène dans les fenêtres et il a bien fonctionné. Mais lorsque j'ai créé le fichier jar et que je l'ai exécuté sur ubuntu 16.04, le CSS n'est pas appliqué et il y a une erreur de suivi dans la console.

Oct 15, 2017 6:18:02 PM com.sun.javafx.css.StyleManager loadStylesheetUnPrivileged 
INFO: Could not load stylesheet: rsrc:../../../resources/css/home.css 

Cela fonctionnait correctement lorsque j'utilise l'application en mode Eclipse dans ubuntu. Mais pour l'ar créé, il ne prend pas les fichiers CSS.

+0

Je suis sûr que le pot ne va pas fonctionner sur les fenêtres aussi. Vous devez spécifier le chemin d'accès complet et remplacer tous les '../ ..' par le bon nom de dossier – JKostikiadis

+0

Cela fonctionne dans Windows sans aucun problème. Et quand je crée le pot avec Intellij IDEA cela fonctionne parfaitement dans Ubuntu aussi –

+0

M. Lister, en fait ce n'est pas une application web. C'est une application JavaFx Desktop. –

Répondre

0

J'ai déjà rencontré des problèmes similaires lorsque je n'ai pas placé le fichier FXML lui-même dans le dossier resources. L'entrée des ressources dans votre chemin suggère que votre fichier FXML semble également être en dehors du dossier resouces. Essayez la structure suivante:

resources/css/home.css 
resources/your/package/yourlayout.fxml 

Puis référentes "@../../css/home.css" à l'intérieur du yourlayout.fxml devrait y avoir aucun problème plus.