Bonjour,

J'essai de mettre à jour mon application Eclise de Kepler vers Mars.

Après avoir mis à jour ma "target platform", je lance l'application et l'exception suivante est levé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
org.eclipse.swt.SWTException: Invalid thread access
	at org.eclipse.swt.SWT.error(SWT.java:4491)
	at org.eclipse.swt.SWT.error(SWT.java:4406)
	at org.eclipse.swt.SWT.error(SWT.java:4377)
	at org.eclipse.swt.widgets.Display.error(Display.java:1258)
	at org.eclipse.swt.widgets.Display.checkDevice(Display.java:764)
	at org.eclipse.swt.widgets.Display.getHighContrast(Display.java:1872)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.setCSSContextVariables(E4Application.java:312)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:293)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:620)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at my.MyApplication.start(MyApplication.java:52)
Cette exception est levé lors du start() de MonApplication.java (IApplication), lors de l'appel de la méthode :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
	Display display = PlatformUI.createDisplay();
		try
		{
			int returnCode = PlatformUI.createAndRunWorkbench(display, new IDEWorkbenchAdvisor());
}
...
Je n'ai changé aucun code source entre les deux versions.

J'ai tout de même essayé d'utiliser les méthodes Display.getDefault.syncExec ou asynchExec, mais cela ne change rien.

Qu'est ce qui a changé entre Kepler et Mars ? quelqu'un à une idée ?

Merci d'avance.