-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Detection of main method behaves differently for mill #56
Comments
@ckipp01 Could it be a mill version mismatch? I'm getting the following:
Right now, the |
Yes so that's exactly what I see as well @alexarchambault. I guess the thing that confuses me is that in the Just to be super clear:
So I just don't get why using |
Mmmhh… Something may have changed in the way mill starts, or maybe we don't fetch the exact same class path as the one it generates its assembly with… Bisected that to those commits:
|
Possibly a class path issue then… Those forced versions do not end up in the POM, so we don't respect them when fetching mill from coursier. |
Yeah, confirmed:
|
Basically, to fix that, mill itself should exclude
That way, |
Thanks a ton for you work on tracking this down and for explaining it. This makes sense and seems doable. I've just been playing around a bit with Mill so this will be good for me to try and figure out and fix. If it's alright I'll leave this open a bit just to reference until I get it fixed. Thanks again @alexarchambault 🙏 . |
The reason for doing this is to ensure that the version of trees that mill wants is indeeed used instead of the newer version that is being pulled in by ammonite-interp. Before this was using `forceVersion()`, but by doing this the forced version doesn't end up in the POM meaning that when someone bootstraps/uses mill via coursier, they are getting the newer trees, which is causing issues with how the main class is detected. You can see more details on this coursier/apps#56 and a huge pros to @alexarchambault for finding this.
The reason for doing this is to ensure that the version of trees that mill wants is indeed used instead of the newer version that is being pulled in by ammonite-interp. Before this was using `forceVersion()`, but by doing this the forced version doesn't end up in the POM meaning that when someone bootstraps/uses mill via coursier, they are getting the newer trees, which is causing issues with how the main class is detected. You can see more details on this coursier/apps#56 and a huge props to @alexarchambault for finding this.
The reason for doing this is to ensure that the version of trees that mill wants is indeed used instead of the newer version that is being pulled in by ammonite-interp. Before this was using `forceVersion()`, but by doing this the forced version doesn't end up in the POM meaning that when someone bootstraps/uses mill via coursier, they are getting the newer trees, which is causing issues with how the main class is detected. You can see more details on this coursier/apps#56 and a huge props to @alexarchambault for finding this.
The reason for doing this is to ensure that the version of trees that mill wants is indeed used instead of the newer version that is being pulled in by ammonite-interp. Before this was using `forceVersion()`, but by doing this the forced version doesn't end up in the POM meaning that when someone bootstraps/uses mill via coursier, they are getting the newer trees, which is causing issues with how the main class is detected. You can see more details on this coursier/apps#56 and a huge props to @alexarchambault for finding this. Pull request: #941
This is taken care of now in com-lihaoyi/mill#941 |
I noticed that when using mill installed via
cs install mill
behaves a bit differently than when using the mill wrapper that is normally in mill projects. For example:./mill app.run
seems to work as expected.Now instead of using the wrapper if you try to use mill installed via
cs
you'll see an error.cs
.Should there be a difference in behavior for finding the main class for the two of these?
The text was updated successfully, but these errors were encountered: