Skip to content
This repository has been archived by the owner on Nov 23, 2021. It is now read-only.

Extend Eclipse / Client PE to get an appropriate IDE #24

Open
abuwipp opened this issue Mar 3, 2015 · 15 comments
Open

Extend Eclipse / Client PE to get an appropriate IDE #24

abuwipp opened this issue Mar 3, 2015 · 15 comments

Comments

@abuwipp
Copy link

abuwipp commented Mar 3, 2015

Try to
a) extend our existing Eclipse-based Client PE with plugins,
b) enable OASP4JS projects to be imported into this extended Eclipse to easily get syntax-highlighting, completion out-of-the-box.

https://github.com/angelozerr/angularjs-eclipse/wiki/Getting-Started and
http://nodeleaf.net/angularjs-eclipse-plugin/ might be a good starting point.
The AngularJS Eclipse Plugin is based on

  • Eclipse WTP, JSDT
  • Tern IDE, node.js
@hohwille
Copy link
Member

hohwille commented Mar 3, 2015

Please provide what is missing here:
https://github.com/oasp/oasp4j-ide/wiki/guide-software-package#eclipse

Ideally in the same format with Update-Sites.

@hohwille
Copy link
Member

hohwille commented Mar 3, 2015

Next time you should file such issues here:
https://github.com/oasp/oasp4j-ide/issues

@abuwipp
Copy link
Author

abuwipp commented Mar 5, 2015

Just got the AngularJS plugin running with the OASP4JS sample app. Seems to work, at least it not makes Eclipse stop working. I'm now looking forward to provide the info where it belongs to: https://github.com/oasp/oasp4js/wiki/Hints-for-using-Eclipse and https://github.com/oasp/oasp4j-ide/wiki/guide-software-package#eclipse

@abuwipp
Copy link
Author

abuwipp commented Mar 5, 2015

oasp4js_ide_eclipseangularjs_setup

@hohwille
Copy link
Member

hohwille commented Mar 6, 2015

Can you contribute to bring the changes into oasp4j-ide-settings, etc. ?
Do you need more insights for that?
Or do you not have the time to do so and only want to provide your working state as large ZIP and handover to someone?

@abuwipp
Copy link
Author

abuwipp commented Mar 13, 2015

I have the installation guide on paper and plan to add it to the existing ide setup wiki page. For settings and zip I would need help.

A colleague told that http://www.aptana.com/ meight be an option too. Perhaps somebody else wants to evaluate this, if it can be installed into our zipped java ide....

@hohwille
Copy link
Member

I already used aptana and when I tried it few years ago it was "acceptable" but not good. Maybe things have progressed in the meantime. I do not know any better option. If someone does, please let us know.

@tbialecki
Copy link
Contributor

http://brackets.io/

Brackets seem to be promising as free alternative to Jetbrains stuff.

2015-03-17 14:54 GMT+01:00 Jörg Hohwiller [email protected]:

I already used aptana and when I tried it few years ago it was
"acceptable" but not good. Maybe things have progressed in the meantime. I
do not know any better option. If someone does, please let us know.


Reply to this email directly or view it on GitHub
#24 (comment).

@hohwille
Copy link
Member

@tbialecki thanks - I had tested brackets as Marek already suggested it to me (maybe on your behalf). However one goal was to have a solution in Eclipse for Java Developers that are used to Eclipse and do not work on Client Stuff all day. Therefore we are looking for the best option. In case a developer is mainly doing client development he should be free to pick a better option if we do not find a convincing solution for eclipse. But having Eclipse for Java and "something-else" for JS is not the best choice for everything. We want to calm down the technology gap that arises with the combination of Java and JS. There is already enough gap that we have to suffer with such as redundant REST service declaration, redundant transfer-objects with validation logic and so forth.

@aburghcap
Copy link

(Some weeks later :-) ) I'm following https://github.com/oasp/oasp4j-ide/wiki/guide-settings as Jörg commented above to get at least these features available for AngularJS web developement:
https://github.com/angelozerr/angularjs-eclipse/wiki/HTML-Features

What should I do to prepare an update of the IDE zip too, when following https://github.com/angelozerr/angularjs-eclipse for installing the plugins?

Ongoing...

@aburghcap
Copy link

AngularJS Eclipse Plugin seems to work fine with OASP.

What we can get from it (as far as I tried it):

  • Syntax validation for JavaScript- and Html code, especially
  • no validation issues with html templates being no complete html page
  • Completion for css classes, Angular Directiven, Attributes etc.
  • Tool Tip help for JavaScript function, AngularJS directives, ...

Some open points:

  • warnings about custom attributes not starting with data-, e.g. display-format
  • one error “Cannot find controller with name AppCntl”

What extensions our Eclipse needs for that:

How the project needs to be configured:

  • remove project oasp4js-sample because its limited to oasp4js/java.
  • create new project at workspaces/main/oasp4js
    -> project containing app, dist, gulp, ...
  • Project oasp4js | Configure | Convert to AngularJS Project…
  • Project Properties | Tern | Script Paths | Add folder "app"
    -> JavaScript files and others available in project explorer
  • Project Properties | Resource | Resource Filters | Exclude | Exclude all | Name node_modules, Name dist
    -> fixes most Web Resource Problems
  • Project Properties | Validation | Project specific settings | Web Resources Validator | Settings | Exclude Group | Folder: app/bower_components
    -> fixes "Undefined JavaScript file" in app/bower_components
  • Project Properties | Validation | Project specific settings | HTML Angular Syntax Validator | Settings | Exclude Group | Folder: app/bower_components
    -> fixes "Undefined CSS class" in app/bower_components

TODO:

  • Include plugins into Client PE zip
  • make project configuration available

@aburghcap
Copy link

With running scripts/update-eclipse-workspace-settings.bat there were no relevant changes in the src/main/settings dir of oasp4j-ide. The relevant properties are distributed in

a) a new file ./.tern-project containing only this line of text:
{"ide":{"scriptPaths":[{"type":"FOLDER","path":"app"}]},"plugins":{"guess-types":{},"angular":{}},"libs":["ecma5","browser"]}
b) filter blocks in .project
c) different files in the .settings folder

Any ideas how to share this via GitHub?

@hohwille
Copy link
Member

hohwille commented Apr 8, 2015

@aburghcap thanks for your investigation and feedback. Sounds promising. I will locally add the plugin and verify that it has no evil side-effects on other functionality of eclipse what is not uncommon as we all know.

for a)-c) the question is what you had to configure manually that should be setup this way automatically for all users. In general b) is problematic and should be in the control of the user. For c) we can checkin individual settings within the project if we want to have this preconfigured. This will also not hurt if others do not have the plugin installed. However this assumes that all will want to use the exact same settings. If someone locally changes a setting and someone else changes something else in the same settings and commits this the first user will get a conflict when he pulls the version control. That is a very undesired situation why we typically do not checkin settings. But we did so also for checkstyle and it is fine.
For a) I have to investigate more to understand what you configured and if this is a global or a project specific setting.

In general oasp4j-ide is about global settings that shall be configured in the workspace.

@hohwille
Copy link
Member

hohwille commented Apr 8, 2015

What I want to configure with oasp4j-ide is the nodejs installation point that shall come with the software package and is always at ${client.env.home}/software/nodejs so we can take care of this if we figure out where such settings are stored in .metadata/plugins/

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants