SOMns icon indicating copy to clipboard operation
SOMns copied to clipboard

[WIP] Windows Support

Open smarr opened this issue 6 years ago • 1 comments

Here a first experiment to see whether we can get things to run on Windows.

Results: https://ci.appveyor.com/project/smarr/somns/build/build%208%20dev

It's a little hard without having a windows machine. It doesn't go far. For some reason my Ant-foo isn't good enough to get MX to work. So, I am giving up for now. If you need Windows support, please check the changes and try to pick it up from here.

smarr avatar Mar 12 '18 17:03 smarr

Some more digging, looks like an issue with MX:

     [exec] java.net.SocketException: Connection reset
     [exec] C:\projects\somns\libs\mx\/mx.py:1227: UserWarning: Duplicate name: 'META-INF/services/javax.annotation.processing.Processor'
     [exec]   arc.zf.writestr(arcname, contents)
     [exec] C:\projects\somns\libs\mx\/mx.py:7636: UserWarning: Duplicate name: 'META-INF/services/javax.annotation.processing.Processor'
     [exec]   arc.zf.writestr(arcname, '\n'.join(dist.definedAnnotationProcessors) + '\n')
     [exec] Traceback (most recent call last):
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 16749, in <module>
     [exec]     main()
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 16730, in main
     [exec]     retcode = c(command_args)
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 10936, in build
     [exec]     t.execute()
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 769, in execute
     [exec]     self.build()
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 1506, in build
     [exec]     self.subject.make_archive()
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 1329, in make_archive
     [exec]     self.notify_updated()
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 893, in notify_updated
     [exec]     l(self)
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 7638, in _refineAnnotationProcessorServiceConfig
     [exec]     arc.zf.writestr(arcname, lp.read(arcname))
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 11375, in __exit__
     [exec]     SafeFileCreation.__exit__(self, exc_type, exc_value, traceback)
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 11345, in __exit__
     [exec]     _handle_file(self.tmpPath, self.path)
     [exec]   File "C:\projects\somns\libs\mx\/mx.py", line 11344, in _handle_file
     [exec]     os.rename(tmpPath, path)
     [exec] WindowsError: [Error 183] Cannot create a file when that file already exists
     [exec] java.net.SocketException: Connection reset
     [exec] 	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:210)
     [exec] 	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:141)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
     [exec] 	at java.base/java.io.InputStreamReader.read(InputStreamReader.java:185)
     [exec] 	at java.base/java.io.BufferedReader.fill(BufferedReader.java:161)
     [exec] 	at java.base/java.io.BufferedReader.readLine(BufferedReader.java:326)
     [exec] 	at java.base/java.io.BufferedReader.readLine(BufferedReader.java:392)
     [exec] 	at com.oracle.mxtool.compilerserver.CompilerDaemon$Connection.run(CompilerDaemon.java:135)
     [exec] 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
     [exec] 	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
     [exec] 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
     [exec] 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
     [exec] 	at java.base/java.lang.Thread.run(Thread.java:844)
     [exec] 	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:210)
     [exec] 	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:141)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
     [exec] 	at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
     [exec] 	at java.base/java.io.InputStreamReader.read(InputStreamReader.java:185)
     [exec] 	at java.base/java.io.BufferedReader.fill(BufferedReader.java:161)
     [exec] 	at java.base/java.io.BufferedReader.readLine(BufferedReader.java:326)

smarr avatar Mar 20 '18 02:03 smarr