ByteCode.News
Submit RSS Atom Sign in

Back to the channels

#java

  1. * schan99 joined #java
  2. * kmh joined #java
  3. * zimal joined #java
  4. * CodePoint joined #java
  5. * domicron9 joined #java
  6. * deebo joined #java
  7. * stfstfm joined #java
  8. * fgarcia joined #java
  9. * simpleauthority joined #java
  10. * zimal joined #java
  11. * yaboishady joined #java
  12. * bemoty joined #java
  13. * bdkl joined #java
  14. * deglebe joined #java
  15. * rvalue joined #java
  16. * lockdown joined #java
  17. * bdkl joined #java
  18. * Aedil joined #java
  19. * ForeverDreaming joined #java
  20. * Geolykt joined #java
  21. * Maxxed joined #java
  22. * ferdna joined #java
  23. * cryosis joined #java
  24. * cryosis joined #java
  25. * cryosis joined #java
  26. * cryosis joined #java
  27. * cryosis joined #java
  28. * cryosis joined #java
  29. * cryosis joined #java
  30. * ernimril joined #java
  31. * troydm joined #java
  32. Swayze Para: did you ever stop to ask why :/ seems youre opening yourself up to being a good robot
  33. Swayze if you did understand the underlying reason for not doing something that should be the reason not because 'you might've read it somewhere'
  34. Swayze feels like ..
  35. * sponkz joined #java
  36. Para Swayze: Why to what?
  37. Para The reasons for not using sun.* packages have been clear since time immemorial, and so are the counterarguments. I happened to agree from the get-go with the "don't" side.
  38. Para I've also used openjdk and other non Sun JDKs years ago where one couldn't rely on these classes existing/doing what they advertised to do exactly, so it has always been easier to just work with the given instead of trying to claim that I know better than the people who literally built the thing.
  39. * kathadris joined #java
  40. * tomboy64 joined #java
  41. Para And I'm sure I've transitively used something that did Weird and Dangerous things with sun.* classes, but I'm not responsible for other's choices in that regard either; if a dependency broke due to mystery issues (NIO in JDK7 springs to mind), it would get replaced.
  42. * mz` joined #java
  43. * Bombe is firmly in camp Para on this one. :)
  44. * tomboy64 joined #java
  45. * magla joined #java
  46. * fgarcia joined #java
  47. * MikeBux joined #java
  48. * tomboy64 joined #java
  49. * xeno joined #java
  50. * sparr joined #java
  51. * metalmaniac joined #java
  52. * cryosis joined #java
  53. * yamada joined #java
  54. * cryosis joined #java
  55. johnjay question. is there a way to use the lsp-server 'jdtls' with pre-21 versions of openjdk? the readme says version 21 is required, but this seems overly strict to me
  56. * cryosis joined #java
  57. * cryosis joined #java
  58. ernimril johnjay, what is the reason you want to use an old jdk?
  59. johnjay i assume they are still used sometimes. 11 and 17 for example are available in debian, and my mint system came with 11 installed by default
  60. johnjay fortunately debian allows multiple versions to coexist so I can just install 21. but jdtls gives an error if you try to use it with a pre-21 java
  61. johnjay and jdtls is the only lsp for java i am aware of
  62. ernimril so what is the problem with running jdtls with java 21 or later? (I would use java 25 most probably)
  63. ernimril if you want to compile for an older jdk you can use "-release 17" as a compiler flag, that will set the language _and_ API level to that given release
  64. johnjay well. presumably if i were debugging or analyzing java 17 code with jdtls it would show me features and classes that might not exist or be available
  65. johnjay as i said i don't know much about language-server-protocol in java, if there are others besides jdtls that would be useful to know
  66. dreamreal Do the lsps respect library version numbers? Like, okay, you use it with 25, but 25 introduces method X on class Y with @since 25, if you're using -release 17 does it still report Y.X as a possible completion?
  67. ernimril I have not tried it, I would consider it a bug if it it does
  68. johnjay i'm not sure i understand, i thought -release was a flag for javac ?
  69. ernimril yes, that is where it originated
  70. johnjay in the situation i was in my system was reporting 11 from 'java -versoin' and then it refused outright to run jdtls from a binary download on my mint pc
  71. johnjay meaning, jdtls requires 21 or later. i would *guess* that means it supports 25 completions as well. is there a class or member i could use to check?
  72. ernimril ct.sym has the information about what classes and methods are in each release (but it is binary so not trivial to read)
  73. johnjay would it maybe say in release notes?
  74. dreamreal I still don't know what would make an LSP compelling
  75. * cryosis joined #java
  76. * cryosis joined #java
  77. * cryosis joined #java
  78. * cryosis joined #java
  79. * cryosis joined #java
  80. johnjay it provides completions, that's what i use it for mainly
  81. dreamreal sure. But why LSP? Does it cost less than eclipse or idea?
  82. johnjay that way i can use vscode or vim instead of a large ide
  83. * cryosis joined #java
  84. johnjay in terms of wait time for them to load idk, maybe once idea loads fully they take comparable time?
  85. * cryosis joined #java
  86. ernimril johnjay, when was the last time you tried idea? on what hardware?
  87. ernimril johnjay, it starts in a few seconds on my laptop (a few years old)
  88. * cryosis joined #java
  89. * cryosis joined #java
  90. dreamreal How many times are you starting your IDE anyway? That's like refusing to use java because the startup isn't <2ms
  91. dreamreal My IDEA has a running time of about 3 minutes less than my system uptime right now
  92. * cryosis joined #java
  93. dreamreal mostly because I have to connect to a bunch of other services too and I just started it AFTER them, not really a reasoned "oh I must run things in this order"
  94. johnjay ernimril: i did try it for a few seconds but in my window manager i think i had something amiss, i couldn't close it
  95. * cryosis joined #java
  96. * cryosis joined #java
  97. johnjay but you're right it does seem faster than I remember
  98. * cryosis joined #java
  99. nimaje the promise of LSP is to split away IDE features from IDEs into a LS, so that you can just use whatever editor as long as it supports LSP, that doesn't fully work out because LSP isn't that good a protocol. There is at least one project that turns idea into a java language server https://github.com/SuduIDE/ideals
  100. javabot nimaje's title: "GitHub - SuduIDE/ideals: Turns IntelliJ IDEA into a generic LSP server"
  101. nevet GitHub - SuduIDE/ideals: Turns IntelliJ IDEA into a generic LSP server
  102. * cryosis joined #java
  103. johnjay nimaje: what are its shortcomings in your view? i've never really thought about its technical merits
  104. * cryosis joined #java
  105. * cryosis joined #java
  106. * cryosis joined #java
  107. * cryosis joined #java
  108. * cryosis joined #java
  109. * cryosis joined #java
  110. * cryosis joined #java
  111. * cryosis joined #java
  112. nimaje I don't remember fully, there where some reasons why you couldn't just have some generic LSP client, but still needed some language or server (not sure which) specific plugin to map stuff to your editor, of course smaller then a plugin for the language itself as the LS does most of the stuff and I think the protocol was some json messages via fake-http, which isn't really compatible to http and most
  113. nimaje implementations of that fake-http were broken in their own way
  114. jreicher nimaje: the promise of LSP is not just a potential diversity of editors. It means that even if you use just on editor, the maintainers of the editor don't need to write support for multiple different languages.
  115. jreicher The protocol isn't just for interoperability of software; it's also for interoperability of teams.
  116. dreamreal not sure interop of TEAMS is really all that affected
  117. dreamreal build tools would be the lever there
  118. jreicher Well AFAICT (from a distance), the VSCode maintainers haven't had to write Java intelligence. The Eclipse maintainers have done it for them. That's what I mean.
  119. dreamreal Yeah, I get the benefit as long as it works, but that's ... okay, so you're talking about different teams than I am. Shut up!
  120. dreamreal :D
  121. jreicher :)
  122. dreamreal jreicher: ++
  123. nevet jreicher now has karma of 1.
  124. * deavmi joined #java
  125. * jreicher joined #java
  126. nimaje jreicher: isn't that what I wrote? the developer of a editor only needs to write a LSP client, not full support for every language the editor should support
  127. dreamreal I think you guys are saying similar things, yes
  128. * agnivn joined #java
  129. * Candle joined #java
  130. * pr070cal joined #java
  131. * meyou joined #java
  132. * domicron joined #java
  133. * ra4king joined #java
  134. * lordnoid joined #java
  135. * nevet joined #java
  136. * CodeGeek!~codegeek@about/java/CodeGeek changed the topic to: Welcome! || Read Channel Rules at https://javachannel.org/ before participating. || Paste limit is two lines; ~pastebin lists options. || No applets, please. || Minecraft, Android, and Javascript all have their own channel. || You are being logged.
  137. * magla joined #java
  138. * kcomhnall joined #java
  139. * sponkz joined #java
  140. * GreenResponse joined #java
  141. * IceMicha| joined #java
  142. * Maxdamantus joined #java
  143. * kcomhnall joined #java
  144. * simon816 joined #java
  145. * vobar joined #java
  146. * Aedil joined #java
  147. * skum joined #java
  148. * bdkl joined #java
  149. * Gaz7051122720067 joined #java
  150. waz idea loads on startup for me
  151. waz VS code is just missing too many things I depend on
  152. * qbone joined #java
  153. * MonsterAbyss joined #java
  154. * MonsterAbyss joined #java
  155. * Betal joined #java
  156. * bdkl joined #java
  157. * CodeGeek!~codegeek@about/java/CodeGeek changed the topic to: Welcome! || Read Channel Rules at https://javachannel.org/ before participating. || Paste limit is two lines; ~pastebin lists options. || No applets, please. || Minecraft, Android, and Javascript all have their own channel. || You are being logged.
  158. * nevet joined #java
  159. * CodeGeek!~codegeek@about/java/CodeGeek changed the topic to: Welcome! || Read Channel Rules at https://javachannel.org/ before participating. || Paste limit is two lines; ~pastebin lists options. || No applets, please. || Minecraft, Android, and Javascript all have their own channel. || You are being logged.
  160. * nevet joined #java
  161. * skinkitten joined #java
  162. * kcomhnall joined #java
  163. * stewi joined #java
  164. * emaczen joined #java
  165. * halloy5204 joined #java
  166. * ferdna joined #java
  167. * bdkl joined #java
  168. * bdkl_ joined #java
  169. * bdkl joined #java
  170. * waz joined #java
  171. * bdkl joined #java
  172. jbosmans i'll double second that regarding vs code <-> intellij
  173. jreicher I've avoided vscode so far but I get the impression it's almost designed not to have much by default. The "extensions" are actually required. Might make sense for there to be a set of "core extensions" that are always installed by default.
  174. * kcomhnall havent used vscode since leaving coding bootcamp in 2020
  175. kcomhnall it's cool for Javascript projects
  176. Para It's basically typescript's companion.
  177. Para And fwiw it's kinda okay.
  178. kcomhnall if I *had* to use anything else besides intellij - I'd be using eclipse
  179. jreicher What's the advantage of eclipse over vscode with the eclipse language server?
  180. jreicher "Feels better"? (That's a thing; I'm not being sarcastic)
  181. kcomhnall dunno - but I won't be finding out anytime soon.
  182. kcomhnall I get to try out the spring tools I guess
  183. kcomhnall hm, vscode has spring extentions - unlike the full integration with eclipse. I suppose that's one advantage
  184. * kcomhnall goes back to understanding how spring aop handles classes that dont implement an interface
  185. * Ragnor joined #java
  186. jreicher kcomhnall: don't all classes "imply" an interface?
  187. jreicher (One of the things I don't like about typical OO, to be honest)
  188. PocketKiller I always walked around with the thought that every class is an implmentation of itself
  189. PocketKiller implementation*
  190. jreicher Yep
  191. * agnivn joined #java
  192. * Fiji joined #java
  193. kcomhnall AOP compliments OO...we know that. jreicher I actually mean in the context of proxying and if it uses the JDK Dynamic proxies or does something else.
  194. * Fiji joined #java
  195. * cheeser joined #java
  196. * bdkl joined #java
  197. jbosmans yeah, well, imho there's no advantage of vs code over eclipse or vice versa, it'd be silly to not be using a jetbrains ide
  198. bdkl I was just about to ask if I should take advantage of my student status for jetbrains, so I guess there's my answer lol
  199. jbosmans bdkl, fwiw right, and ymmv etc :)
  200. jbosmans overall i'd say it's worth it
  201. jbosmans "says someone" etc :)
  202. bdkl jbosmans: i always appreciate the sage advice of my betters
  203. kcomhnall complements*
  204. kcomhnall brain is mush right now
  205. jbosmans bdkl, no-one is better, there's only those who aspire to grow, and those who .. don't
  206. jbosmans in any case, if price isn't an issue i would recommend a jetbrains ide, having used all the others myself way back when
  207. jbosmans well, probably not "all" the others :)
  208. jreicher I periodically repeat this conversation at work and that feedback is what I consistently get too. Jetbrains still seems to be the best.
  209. jbosmans sounds familiar :)
  210. * skum joined #java
  211. jbosmans we ought to get paid
  212. jreicher People who use other things seem to have a "personal" preference rather than an objective evaluation. For example they might have an historic attachment to older tools and don't to learn something else unless the difference is very large.
  213. jbosmans fwiw jetbrains isn't the underdog anymore
  214. jbosmans yeah that makes sense
  215. jbosmans i quite liked eclipse "before", and didn't like intellij "at first'
  216. jbosmans *"
  217. jbosmans i grew up in a different time tho, and imho the way jetbrains/intellij did/made their ide(s) was best
  218. jbosmans code centric iirc way back when
  219. jbosmans quite different from attempts at "wizard driven development"
  220. kcomhnall heh, 'before' makes me think of the action taken by an aspect at a particular join point. an "Advice"
  221. jbosmans :D
  222. jreicher What is "wizard driven development"? (Sounds horrible, although I think I saw it)
  223. jbosmans AOP ftw :-) well, then again, no
  224. kcomhnall heh
  225. jbosmans i have/had a book about that
  226. jbosmans never did get around to properly levering AOP
  227. jbosmans spring supports it with proper annotations
  228. jbosmans jreicher, it's like "create a new servlet in this project" etc
  229. * lostlazy joined #java
  230. jbosmans you'd get a form or two to fill out and then proper changes are made for you
  231. jbosmans in the idea scenario ;)
  232. jreicher It gives you a code template that you then fill in, or it tries to write all the code? And what tools had this? I get it for very limited system, but a general purpose programming language??? Hell no.
  233. jbosmans yeah, it's sort of like "if you call this method on this object, do this or that before or after"
  234. jbosmans it can/could also be done for many similar invocations etc
  235. jbosmans i think in the long run the conclusion most people made was "we need to maintain this as well"
  236. jbosmans which was kind of a bummer
  237. kcomhnall ugh...found my answer : "By default, CGLIB is used if a business object does not implement an interface"
  238. kcomhnall https://docs.spring.io/spring-framework/reference/core/aop/introduction-proxies.html
  239. jbosmans mm sorry i came late to the party
  240. kcomhnall nothing much going on - just quizzing myself or some things.
  241. jbosmans wrapping/extending actual classes is always more "painful" than doing so for interface implementations
  242. jbosmans well, at least " having it done for you"
  243. jbosmans <- nite nite
  244. * bdkl joined #java
  245. * ForeverDreaming joined #java
  246. * metalmaniac joined #java