Path: csiph.com!feeder.erje.net!2.eu.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Eric Sosman Newsgroups: comp.lang.java.programmer Subject: Re: Java 9 Date: Thu, 25 Jan 2018 17:09:48 -0500 Organization: A noiseless patient Spider Lines: 31 Message-ID: References: <31ae5b61-c6df-4c97-91e7-c33fa9571822@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 25 Jan 2018 22:09:52 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="88fdc3b683f5a2b5dfc9ed10948187ad"; logging-data="14252"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/5cwjEqTSBTG6PXdmi6/a1" User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 In-Reply-To: <31ae5b61-c6df-4c97-91e7-c33fa9571822@googlegroups.com> Content-Language: en-US Cancel-Lock: sha1:9082ItViaVplgaO9i8j7iXc2qKY= Xref: csiph.com comp.lang.java.programmer:37999 On 1/25/2018 4:03 PM, Eric Douglas wrote: > First, when does Java 9 go mainstream? Anyone just looking for a JRE to run a Java based app will go to https://java.com/en/download/ which currently still downloads 8. > > Second, how do I get my code to compile? I swear I had my code compiling on 9 before so maybe I added code after that, since I'm doing my normal development on 8 because we're integrating to an API that doesn't support 9 yet. I need to either find a dependency to add, change my code to not need the dependency, or get the source from the Oracle methods packaged into Java 8 and just paste it into my API. > > I'm looking for > sun.swing.SwingUtilities2.liesInVertical(Rectangle rect, Point p, boolean three) > sun.swing.SwingUtilities2.getTreePath(TreeModelEvent event, TreeModel model) If you're calling these methods from your own code, you have been sinning and are now receiving your punishment. See Two courses of action seem plausible if this is the case: To remove the not-part-of-official-Java stuff from your code and rely on the "published" API's instead, or to hope there's a SwingUtilities3 (?) package with methods not too dissimilar to those you've been (ab)using. The first is certainly preferable if you can, er, swing it, since it leaves you less exposed to breakage in future Java versions (and allows you to use non-Oracle Java implementations, too). The second, if it works at all, is at best an ugly hack. If you're calling "published" Java API's and they in turn use these Oracle-private packages, that's another matter, and the error most likely has something to do with a bollixed configuration. I don't have any suggestions for this case, unfortunately. -- esosman@comcast-dot-net.invalid One thousand ninety-one days to go.