SOMns
SOMns copied to clipboard
[WIP] Windows Support
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.
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)