IvyDE
  1. IvyDE
  2. IVYDE-268

Resolve errors should be build errors, not eclipse errors

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.0
    • Fix Version/s: 2.2.0.beta1
    • Component/s: workspace resolver
    • Labels:
      None

      Description

      when maven can't find dependencies for a build, the errors appear under the Problems view. When ivy can't resolve or download a dependency, it appears under the Error Log and notifies with a pop-up dialog.

        Activity

        Adam Lehenbauer created issue -
        Hide
        Nicolas Lalevée added a comment -

        I agree with you that IvyDE should not use error mechanism of Eclipse jobs to handle resolve errors.
        It has lately been improved to try to put error status in the Problems view. But it lacks of further description, further detail about the error. I don't know how to to it with that kind of view. Maybe the solution would be to introduce a view dedicated to resolve issues ?

        Show
        Nicolas Lalevée added a comment - I agree with you that IvyDE should not use error mechanism of Eclipse jobs to handle resolve errors. It has lately been improved to try to put error status in the Problems view. But it lacks of further description, further detail about the error. I don't know how to to it with that kind of view. Maybe the solution would be to introduce a view dedicated to resolve issues ?
        Hide
        Adam Lehenbauer added a comment -

        The biggest annoyance for me is the error dialog that appears, so a dedicated view would definitely be an improvement.

        However, it doesn't seem like the ivy build errors are any different than the ones maven puts in the Problems view.

        For example, I broke a dependency in a project and maven gives me this:

        Description Resource Path Location Type
        The container 'Maven Dependencies' references non existing library '/home/adam/.m2/repository/log4j/log4j/1.2.999/log4j-1.2.999.jar' tools   Build path Build Path Problem
        The project cannot be built until build path errors are resolved tools   Unknown Java Problem
        Missing artifact log4j:log4j:jar:1.2.999:compile pom.xml /tools line 1 Maven Problem

        A similar error in ivy gives this:

        Error Mon Nov 29 12:47:20 EST 2010 unresolved dependency: com.sun.jersey#jersey-client;1.1.5.1: not found

        What else does Ivy need to let me know?

        Show
        Adam Lehenbauer added a comment - The biggest annoyance for me is the error dialog that appears, so a dedicated view would definitely be an improvement. However, it doesn't seem like the ivy build errors are any different than the ones maven puts in the Problems view. For example, I broke a dependency in a project and maven gives me this: Description Resource Path Location Type The container 'Maven Dependencies' references non existing library '/home/adam/.m2/repository/log4j/log4j/1.2.999/log4j-1.2.999.jar' tools   Build path Build Path Problem The project cannot be built until build path errors are resolved tools   Unknown Java Problem Missing artifact log4j:log4j:jar:1.2.999:compile pom.xml /tools line 1 Maven Problem A similar error in ivy gives this: Error Mon Nov 29 12:47:20 EST 2010 unresolved dependency: com.sun.jersey#jersey-client;1.1.5.1: not found What else does Ivy need to let me know?
        Hide
        Nicolas Lalevée added a comment -

        Actually I was wrong, IvyDE is already pushing errors in the problems view just like Maven does (I should better know the software I maintain ! ).

        I think I still let the errors popup because sometime the error message can be quite long and to manage readability, the carriage return are inserted.

        See for instance:

        Error while resolving the ivy instance for ivy.xml[runtime, test, compile] in 'cas':
          The ivy settings file 'file:/Users/hibou/dev/svn/tools/build/ivysettings.xml' could not be parsed: failed to load settings from file:/Users/hibou/dev/svn/tools/build/ivysettings.xml: The element type "ivysettinssgs" must be terminated by the matching end-tag "</ivysettinssgs>".
        

        And this is not readable in the problems view... It would be not much better if everything was on one line. Maybe we can hook something on the double click on the Ivy problem ?

        And another case which should be taken care: in the launch configuration we can reference ivy files on the file system which is not part of the workspace, so the problem view cannot be used for reporting that kind of errors. Here a popup should still be mandatory, but a dedicated one would probably be better than the default error one, for sure.

        Show
        Nicolas Lalevée added a comment - Actually I was wrong, IvyDE is already pushing errors in the problems view just like Maven does (I should better know the software I maintain ! ). I think I still let the errors popup because sometime the error message can be quite long and to manage readability, the carriage return are inserted. See for instance: Error while resolving the ivy instance for ivy.xml[runtime, test, compile] in 'cas': The ivy settings file 'file:/Users/hibou/dev/svn/tools/build/ivysettings.xml' could not be parsed: failed to load settings from file:/Users/hibou/dev/svn/tools/build/ivysettings.xml: The element type "ivysettinssgs" must be terminated by the matching end-tag "</ivysettinssgs>". And this is not readable in the problems view... It would be not much better if everything was on one line. Maybe we can hook something on the double click on the Ivy problem ? And another case which should be taken care: in the launch configuration we can reference ivy files on the file system which is not part of the workspace, so the problem view cannot be used for reporting that kind of errors. Here a popup should still be mandatory, but a dedicated one would probably be better than the default error one, for sure.
        Hide
        Adam Lehenbauer added a comment -

        You're right, resolve errors do appear in the problems view, and that view does not tell me which dependency causes a problem.

        The main thing for me isn't which view shows me the error, but that the popup interrupts my work and must be dispatched very frequently. I recently converted a large project to ivy and the popups weren't helpful; I would have preferred to just see how the error (or problems) view changes when I save and let Ivy resolve.

        An ivy-specific error view would be fine with me, although its not really how most plugins work.

        Show
        Adam Lehenbauer added a comment - You're right, resolve errors do appear in the problems view, and that view does not tell me which dependency causes a problem. The main thing for me isn't which view shows me the error, but that the popup interrupts my work and must be dispatched very frequently. I recently converted a large project to ivy and the popups weren't helpful; I would have preferred to just see how the error (or problems) view changes when I save and let Ivy resolve. An ivy-specific error view would be fine with me, although its not really how most plugins work.
        Hide
        Nicolas Lalevée added a comment -

        So it can be usable in your use case, I have added an option to not show popup on resolve errors.

        Show
        Nicolas Lalevée added a comment - So it can be usable in your use case, I have added an option to not show popup on resolve errors.
        Nicolas Lalevée made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Assignee Nicolas Lalevée [ hibou ]
        Fix Version/s trunk [ 12315245 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Nicolas Lalevée
            Reporter:
            Adam Lehenbauer
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development