Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 363045

Summary: "Could not create Tycho secure store file" should display the missing path
Product: z_Archived Reporter: Reiner Hille <reiner.hille-doering>
Component: TychoAssignee: Jan Sievers <jan.sievers>
Status: RESOLVED FIXED QA Contact:
Severity: minor    
Priority: P2 CC: jan.sievers
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Reiner Hille CLA 2011-11-07 08:56:58 EST
We have a Jenkins running on Apache. Apache is running as a Windows Service. This service is configured to use the "SYSTEM" account, with flag "Allow service to interact with desktop". This setting is needed to successfully execute UI tests.

In some cases Tycho stops with exception "Could not create Tycho secure store file". Unfortunately it doesn't show the path where Tycho wants to create the secure store:
mavenExecutionResult exceptions not empty
message : Could not create Tycho secure store file
cause : The system cannot find the path specified
Stack trace : 
org.apache.maven.MavenExecutionException: Could not create Tycho secure store file
	at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:68)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:273)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
	at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:79)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
	at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:158)
	at hudson.maven.Maven3Builder.call(Maven3Builder.java:112)
	at hudson.maven.Maven3Builder.call(Maven3Builder.java:70)
	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
	at hudson.remoting.Request$2.run(Request.java:287)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.IOException: The system cannot find the path specified
	at java.io.WinNTFileSystem.createFileExclusively(Native Method)
	at java.io.File.checkAndCreate(File.java:1704)
	at java.io.File.createTempFile(File.java:1792)
	at java.io.File.createTempFile(File.java:1828)
	at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:65)
	... 21 more

In our case the problem could ve solved using Sysinternals "Process Monitor". I gave us the missing path, in our case "d:\temp". But a log entry would be much easier.
Comment 1 Jan Sievers CLA 2011-11-07 12:27:13 EST
that means you can't write to java.io.tmpdir. This kind of setup will very likely cause other problems.

Fixed with http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/commit/?id=fad9a63e3e75bdff94b57b5f21c0a15fad6c60d4