Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
Thanks for looking into this, highly appreciated. On Wednesday, November 6, 2013 7:49:59 AM UTC+1, Colin Fleming wrote: Right, I had a chance to take a look at this - the classpath for the REPL unfortunately doesn't include the source directories of dependent modules. I'll fix that in the next build. There is a workaround. In Settings-Compiler-Clojure Compiler, enable Copy Clojure source files to output path. In Settings-Compiler, if you have Use external build selected then change the resource pattern for Clojure from !?*.clj to ?*.clj. Then you can build your dependent module manually (for example, by right clicking on it in the project tree and selecting Make Module 'your module'. That will copy your Clojure files to the output path and they'll be picked up by the REPL then. On 6 November 2013 10:50, Colin Fleming colin.ma...@gmail.comjavascript: wrote: Hmm, there may be some problem with the classpath there - I'll take a look. On 5 November 2013 23:53, Niels van Klaveren niels.va...@gmail.comjavascript: wrote: The namepace resolution issue vanished after upgrading Cursive and re-opening the project after deleting the IntelliJ artifacts in it. Checkouts namespacing is recognized as well, and checkouts src directories are nicely marked as such. However, when loading the file in the REPL I get a Could not locate menthy/utils_java/jdbc__init.class or menthy/utils_java/jdbc.clj on classpath exception for calls to the checkout project(s). On Tuesday, November 5, 2013 7:51:00 AM UTC+1, Colin Fleming wrote: Hi Niels, I've just released Cursive 0.1.05 which fixes this issue. Documentation for the Leiningen support is herehttp://cursiveclojure.com/userguide/leiningen.html. Basically you should be able to just import your project wholesale and it will automatically work out all the dependencies. Checkout dependencies are also transparently supported for interop with other tools. Let me know if it works for you, and I'd be interested to know more about your namespace resolution problems too. Feel free to drop me a mail at cur...@cursiveclojure.com if you'd rather send it off-list. Thanks, Colin On 2 November 2013 04:44, Niels van Klaveren niels.va...@gmail.comwrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@**googlegroups.com For more options, visit this group at http://groups.google.com/**group/clojure?hl=enhttp://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@**googlegroups.com. For more options, visit https://groups.google.com/**groups/opt_outhttps://groups.google.com/groups/opt_out . -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
The namepace resolution issue vanished after upgrading Cursive and re-opening the project after deleting the IntelliJ artifacts in it. Checkouts namespacing is recognized as well, and checkouts src directories are nicely marked as such. However, when loading the file in the REPL I get a Could not locate menthy/utils_java/jdbc__init.class or menthy/utils_java/jdbc.clj on classpath exception for calls to the checkout project(s). On Tuesday, November 5, 2013 7:51:00 AM UTC+1, Colin Fleming wrote: Hi Niels, I've just released Cursive 0.1.05 which fixes this issue. Documentation for the Leiningen support is herehttp://cursiveclojure.com/userguide/leiningen.html. Basically you should be able to just import your project wholesale and it will automatically work out all the dependencies. Checkout dependencies are also transparently supported for interop with other tools. Let me know if it works for you, and I'd be interested to know more about your namespace resolution problems too. Feel free to drop me a mail at cur...@cursiveclojure.com javascript: if you'd rather send it off-list. Thanks, Colin On 2 November 2013 04:44, Niels van Klaveren niels.va...@gmail.comjavascript: wrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.comjavascript: Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com javascript: For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com javascript:. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
Hmm, there may be some problem with the classpath there - I'll take a look. On 5 November 2013 23:53, Niels van Klaveren niels.vanklave...@gmail.comwrote: The namepace resolution issue vanished after upgrading Cursive and re-opening the project after deleting the IntelliJ artifacts in it. Checkouts namespacing is recognized as well, and checkouts src directories are nicely marked as such. However, when loading the file in the REPL I get a Could not locate menthy/utils_java/jdbc__init.class or menthy/utils_java/jdbc.clj on classpath exception for calls to the checkout project(s). On Tuesday, November 5, 2013 7:51:00 AM UTC+1, Colin Fleming wrote: Hi Niels, I've just released Cursive 0.1.05 which fixes this issue. Documentation for the Leiningen support is herehttp://cursiveclojure.com/userguide/leiningen.html. Basically you should be able to just import your project wholesale and it will automatically work out all the dependencies. Checkout dependencies are also transparently supported for interop with other tools. Let me know if it works for you, and I'd be interested to know more about your namespace resolution problems too. Feel free to drop me a mail at cur...@cursiveclojure.com if you'd rather send it off-list. Thanks, Colin On 2 November 2013 04:44, Niels van Klaveren niels.va...@gmail.comwrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
Right, I had a chance to take a look at this - the classpath for the REPL unfortunately doesn't include the source directories of dependent modules. I'll fix that in the next build. There is a workaround. In Settings-Compiler-Clojure Compiler, enable Copy Clojure source files to output path. In Settings-Compiler, if you have Use external build selected then change the resource pattern for Clojure from !?*.clj to ?*.clj. Then you can build your dependent module manually (for example, by right clicking on it in the project tree and selecting Make Module 'your module'. That will copy your Clojure files to the output path and they'll be picked up by the REPL then. On 6 November 2013 10:50, Colin Fleming colin.mailingl...@gmail.com wrote: Hmm, there may be some problem with the classpath there - I'll take a look. On 5 November 2013 23:53, Niels van Klaveren niels.vanklave...@gmail.comwrote: The namepace resolution issue vanished after upgrading Cursive and re-opening the project after deleting the IntelliJ artifacts in it. Checkouts namespacing is recognized as well, and checkouts src directories are nicely marked as such. However, when loading the file in the REPL I get a Could not locate menthy/utils_java/jdbc__init.class or menthy/utils_java/jdbc.clj on classpath exception for calls to the checkout project(s). On Tuesday, November 5, 2013 7:51:00 AM UTC+1, Colin Fleming wrote: Hi Niels, I've just released Cursive 0.1.05 which fixes this issue. Documentation for the Leiningen support is herehttp://cursiveclojure.com/userguide/leiningen.html. Basically you should be able to just import your project wholesale and it will automatically work out all the dependencies. Checkout dependencies are also transparently supported for interop with other tools. Let me know if it works for you, and I'd be interested to know more about your namespace resolution problems too. Feel free to drop me a mail at cur...@cursiveclojure.com if you'd rather send it off-list. Thanks, Colin On 2 November 2013 04:44, Niels van Klaveren niels.va...@gmail.comwrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clo...@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+u...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
Hi Niels, I've just released Cursive 0.1.05 which fixes this issue. Documentation for the Leiningen support is herehttp://cursiveclojure.com/userguide/leiningen.html. Basically you should be able to just import your project wholesale and it will automatically work out all the dependencies. Checkout dependencies are also transparently supported for interop with other tools. Let me know if it works for you, and I'd be interested to know more about your namespace resolution problems too. Feel free to drop me a mail at curs...@cursiveclojure.com if you'd rather send it off-list. Thanks, Colin On 2 November 2013 04:44, Niels van Klaveren niels.vanklave...@gmail.comwrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
I don't think it's the way to do it, because the checkouts /src directory gets unmarked when the project is loaded anew after an IntelliJ restart. On Friday, November 1, 2013 4:44:49 PM UTC+1, Niels van Klaveren wrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
Right, this is still a little messy - this is actually something I'll be working on this week. I fixed up the existing support which wouldn't allow multiple modules at all (or at least would throw exceptions when Aether couldn't resolve the dependencies), but it's still not smart about adding one module to the classpath of another, sorry. I'll try to fix this in the next build. The require :as alias and require :refer should definitely be working, could you let me know what your ns form looks like? Maybe drop me a mail at curs...@cursiveclojure.com rather than on the list. I'd be interested to know what your multi-project lein project looks like, too. Thanks! On 2 November 2013 05:24, Niels van Klaveren niels.vanklave...@gmail.comwrote: I don't think it's the way to do it, because the checkouts /src directory gets unmarked when the project is loaded anew after an IntelliJ restart. On Friday, November 1, 2013 4:44:49 PM UTC+1, Niels van Klaveren wrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Cursive IntelliJ working on multiple Leiningen projects require - refer :as not working
BTW as a workaround you can import the dependency as a module in your project (File-Import Module...), and manually add a dependency on that module to your main project (Project Structure-Modules-{your_module}-Dependencies. That will allow symbols to be resolved from one project to the other and is basically manually doing what any future support will do automatically. That link will also survive a project refresh. On 2 November 2013 10:06, Colin Fleming colin.mailingl...@gmail.com wrote: Right, this is still a little messy - this is actually something I'll be working on this week. I fixed up the existing support which wouldn't allow multiple modules at all (or at least would throw exceptions when Aether couldn't resolve the dependencies), but it's still not smart about adding one module to the classpath of another, sorry. I'll try to fix this in the next build. The require :as alias and require :refer should definitely be working, could you let me know what your ns form looks like? Maybe drop me a mail at curs...@cursiveclojure.com rather than on the list. I'd be interested to know what your multi-project lein project looks like, too. Thanks! On 2 November 2013 05:24, Niels van Klaveren niels.vanklave...@gmail.comwrote: I don't think it's the way to do it, because the checkouts /src directory gets unmarked when the project is loaded anew after an IntelliJ restart. On Friday, November 1, 2013 4:44:49 PM UTC+1, Niels van Klaveren wrote: The release notes mention that working on multiple Leiningen projects has been improved, but how to get it working ? I wondered if there's a preferred way to work on multiple Leiningen projects, so changes in one are reflected in the other. - Leiningen has the option to work with the checkouts directory containing a simlink (linux) / junction link (windows) to the directories in question - CounterClockWise has the option to add the other project to the project build path I got things working by using the checkout directory / junction link method, and in Cursive marking the checkout source directory as a Source Root. Is this the intended way to do it, or is there another way ? Another thing I noticed is that require :as alias and require :refer aren't picked up, and all aliased / referred function calls are marked as cannot resolved be resolved warnings. Any way I can get rid of those ? -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups Clojure group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.