SAP WEB IDE Error when building application - sapui5

In SAP WEB IDE I'm building my project (Right-Clck + Build).
This was working correctly but now it's erroring with:
4​:43:07 PM (Build) Build started. 4:43:10 PM (DIBuild) Build of /rsa-complete-survey in progress 4:43:11 PM (DIBuild) [INFO] Retrieving source code
[INFO] Preparing node environment
[INFO] package.json not modified, skipping npm installation
[INFO] Using recently cached node_modules
[INFO] Node environment ready
4:43:15 PM (DIBuild) grunt-cli: The grunt command line interface (v1.2.0)
Fatal error: Unable to find local grunt.
If you're seeing this message, grunt hasn't been installed locally to
your project. For more information about installing and configuring grunt,
please see the Getting Started guide:
http://gruntjs.com/getting-started
[INFO] Build finished in 4 seconds
Any ideas?

Should to be a temporary problem. Others are reporting similar issues as well. To join the discussion, click here to get invited and visit the channel #sapwebide.

Related

ObjectBox does not build after Dart SDK update

I was using ObjectBox without many problems for a while during a development with Flutter, but now the build_runner fails:
The closest change I have made is a Flutter upgrade yesterday to Flutter 2.5.3 along with Dart 2.14.4.
ObjectBox dependencies in pubspec.yaml are:
objectbox: ^1.2.0
objectbox_flutter_libs: any
Now, although the objectbox-model.json file is there, the objectbox.g.dart file is missing and does not get regenerated.
I then tried to run the two example projects give in the official OB documents, but those failed too with similar results (they ran OK before this).
The complete build stack is as follows:'
Microsoft Windows [Version 10.0.19042.1237] (c) Microsoft Corporation. All rights reserved.
D:\learnedfriend>flutter pub run build_runner watch --delete-conflicting-outputs
[INFO] Generating build script...
[INFO] Generating build script completed, took 462ms
[INFO] Setting up file watchers...
[INFO] Setting up file watchers completed, took 11ms
[INFO] Waiting for all file watchers to be ready...
[INFO] Waiting for all file watchers to be ready completed, took 358ms
[INFO] Initializing inputs
[INFO] Reading cached asset graph...
[INFO] Reading cached asset graph completed, took 126ms
[INFO] Checking for updates since last build...
[INFO] Checking for updates since last build completed, took 6.3s
[INFO] Running build...
[INFO] Running build completed, took 14ms
[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 54ms
[SEVERE] objectbox_generator:generator on lib/$lib$ (cached):
Bad state: lastRelationId 4:6834778133563033891 does not match any standalone relation
[SEVERE] Failed after 85ms
I have found a solution to this problem and am posting it for the benefit of whoever encounters the same issue in future.
You should manually delete the objectbox-model.json file and objectbox.g.dart (if it still exists) and run the command "flutter pub run build_runner watch --delete-conflicting-outputs" at the project folder (without quotes, of course).
Also, it has to be mentioned that, as at the time of writing this post, if ObjectBox is a contemplated choice for your persistence, please be wary that (although it is an excellent package), support for a problem if you get stuck is very low to nil, in stackoverflow. I have not seen more than 2 or 3 contributors and if your question escapes their attention, you are pretty much on your own!

Jrebel not initializing for embedded tomcat

I have been unable to get Jrebel to run. I am running a Hippo Java project on mac with the Eclipse plugin. I run the project using mvn from a command line (not through the eclipse IDE). I have followed these instructions for Hippo and JRebel
I have located the JRebel Eclipse plugin files here:
/Applications/Eclipse.app/Contents/Eclipse/plugins
From here I copied the contents of
org.zeroturnaround.eclipse.embedder_6.5.0.RELEASE/jrebel/
which contains 2 files: jrebel.jar and jrebel.plugininfo
I put these copies into a created directory ~/Tools/jrebel and pointed the environment variable REBEL_HOME to it.
export REBEL_HOME=~/Tools/jrebel
When I echo $REBEL_HOME I get the correct path. When I cd to that path and ls I get the 2 files.
In my hippo project, from the command line I run
mvn clean verify -Djrebel
I get build success. Then I run
mvn -Pcargo.run -Djrebel
This gives the error:
[INFO] [talledLocalContainer] Error opening zip file or JAR manifest missing : ${env.REBEL_HOME}/jrebel.jar
[INFO] [talledLocalContainer] Error occurred during initialization of VM
[INFO] [talledLocalContainer] agent library failed to init: instrument
I have read here to specify the path of jrebel.jar to -javaagent , but I don't know what this means or how to do it?
Hippo has built in JRebel configurations in the pom.xml. These should be activated with the -Djrebel flag. Why isn't this working?
The error shows that in that process REBEL_HOME isn't defined. I don't see anything wrong with what you did here so there may be some peculiarity to your local setup or to MacOS (I'm not a mac user). In any case your environment variable is not being passed to the process.
Everything you said works for me on Linux (Mint).
You can try setting the property in the cargo profile.
Or you could set the variable in your global environment.

Google app engine on existing maven-tomcat projects

I am running Magnolia CMS on a tomcat 7, I would like to leverage Googles App Engine(GAE).
From googles documentations i understand that it is enough to include the GAE plugin to my root pom.xml within the build tags, see below:
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>1.9.31</version>
</plugin>
In Googles documentation it states that I also have to add appengine-web.xml in my WEB-INF folder which i did - not sure if its even getting picked up...
Google states that to start the application you need to execute mvn appengine:devserver and to upload it to google mvn appengine:update.
When i atempted to use these commands mvn appengine:devserver and mvn appengine:update i get failures .....also im not sure im supposed to run them considering my existing setup
[INFO] Initializing Log4J
[INFO] Initializing Log4J from [WEB-INF/config/default/log4j.xml]
[INFO] 2016-02-07 21:08:47,159 ERROR info.magnolia.init.MagnoliaServletContextListener : Oops, Magnolia could not be started
[INFO] java.lang.NoClassDefFoundError: java.io.FileOutputStream is a restricted class. Please see the Google App Engine developer's guide for more details.
[INFO] at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java:52)
[INFO] at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)
[INFO] at org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:207)
[INFO] at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)
[INFO] at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)
[INFO] at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:295)
[INFO] at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:176)
Some points to note, project has many maven modules, only one module needs GAE. Project is running Java 8. Feature in GAE needed is Task Queue API. Eclipse version is Luna 4.4.1. Magnolia version 5.4.3. Tomcat is started from within eclipse in server configuration
Question: what is the right approach to making these two systems talk to each-other, so i can leverage GAE capabilities in my already existing project running on tomcat?

GWT Maven : Module 'xxx' may need to be (re)compiled

Problem: Keep getting "module 'xxx' may need to be (re)compiled".
Steps:
Importing a sample GWT-Maven project into eclipse ("MobileWebApp" - from the GWT SDK).
GWT|compile the project.
Running in production mode (without the codesvr parameter, i.e. using "localhost:8888/MobileWebApp.html").
Notes:
I am fairly new to both GWT and Maven.
I read GWT module may need to be (re)compiled REDUX.
Dev mode does work (I am able to debug the application).
Detailed Steps:
Copying the "MobileWebApp" folder from the "samples" folder inside the GWT SDK (version 2.5.1) to my eclipse workspace.
Importing the project: File->Import->Existing Maven Projects (pointing to the "MobileWebApp" folder where the pom.xml exists.
Configuring the project following these steps: https://developers.google.com/eclipse/docs/faq?hl=iw#gwt_with_maven
At this point I am able to run the app as "Web Application" and debug it.
Running GWT|Compile: The nocache.js stuff is being placed in the target folder.
Now, when i try to run the app in production mode I am getting the (re)compile error.
Logs:
"DataNucleus Enhancer (version 1.1.4) : Enhancement of classes
DataNucleus Enhancer completed with success for 0 classes. Timings : input=713 ms, enhance=0 ms,
total=713 ms. Consult the log for full details
DataNucleus Enhancer completed and no classes were enhanced. Consult the log for full details"
"Compiling module com.google.gwt.sample.mobilewebapp.MobileWebApp
Validating units:
Ignored 1 unit with compilation errors in first pass.
Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
Compiling 6 permutations
Compiling permutation 0...
Compiling permutation 1...
Compiling permutation 2...
Compiling permutation 3...
Compiling permutation 4...
Compiling permutation 5...
Compile of permutations succeeded
Linking into D:\workspace\eclipse\MobileWebApp\target\MobileWebApp-1.0-SNAPSHOT\mobilewebapp
Invoking Linker AppCacheLinker
Be sure your landing page's tag declares a manifest:
Link succeeded
Compilation succeeded -- 152.077s"
"Initializing App Engine server
06/07/2013 20:12:33 com.google.apphosting.utils.jetty.JettyLogger info
INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger
06/07/2013 20:12:33 com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
INFO: Successfully processed D:\workspace\eclipse\MobileWebApp\target\MobileWebApp-1.0-SNAPSHOT\WEB-INF/appengine-web.xml
06/07/2013 20:12:33 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFO: Successfully processed D:\workspace\eclipse\MobileWebApp\target\MobileWebApp-1.0-SNAPSHOT\WEB-INF/web.xml
06/07/2013 20:12:34 com.google.apphosting.utils.jetty.JettyLogger info
INFO: jetty-6.1.x
06/07/2013 20:12:36 com.google.apphosting.utils.jetty.JettyLogger info
INFO: Started SelectChannelConnector#0.0.0.0:8888
06/07/2013 20:12:36 com.google.appengine.tools.development.DevAppServerImpl start
INFO: The server is running at localhost:8888/
06/07/2013 20:12:36 com.google.appengine.tools.development.DevAppServerImpl start
INFO: The admin console is running at localhost:8888/_ah/admin
Linking modules
Bootstrap link for command-line module 'com.google.gwt.sample.mobilewebapp.MobileWebApp'
Linking module 'mobilewebapp'
Invoking Linker AppCacheLinker
DevMode warning: Clobbering appcache.nocache.manifest to allow debugging. Recompile before deploying your app!
Be sure your landing page's tag declares a manifest:
06/07/2013 20:13:38 com.google.apphosting.utils.jetty.AppEngineAuthentication$AppEngineAuthenticator authenticate
INFO: Got /MobileWebApp.html but no one was logged in, redirecting."
Pom.xml: https://code.google.com/p/google-web-toolkit/source/browse/trunk/samples/mobilewebapp/
Thanks ahead.
Answering my own question:
1) from command: "mvn gwt:run".
2) Google|GWT compile.
P.S. As much as I am happy figuring that out (after agonizing couple of days) I would still like to know the reasons of why I have to - first lunch the app then compile it. Very strange - in my humble opinion.
offtopic: This sample app was supposed to be "offline executable" (from mobile, at the very least) - so how exactly do I test it? I tried (after running the app once or twice from mobile device, so that it will be cached) to switch to airplane mode and navigating to the app (just like he demonstrated) but, obviously(?), the server is not reachable.. Do I need to enable something specific for it to work? (my mobile device is Google-Nexus-4)
Multiple steps:
Update Project properties -> deployment Assembly using Deploy GWT maven project with eclipse deploys webapp directory instead of target/project directory
mvn clean package
mvn gwt:compile
In eclipse, click on 'GWT Compile Project' -> Advacned -> Remove '-war src/main/webapp' argument and hit compile.
Output should be like this -
Linking into target/project-1.0-SNAPSHOT/ModuleName
Now the deployment should work fine.

Overwriting generated target in local maven repository with Maven-Eclipse?

Maven won't overwrite the built version of an eclipse project in my local repository. I only changed a META-INF/MANIFEST.MF file, but Maven doesn't seem to recognize that and therefore doesn't overwrite the artifacts in the local repository. How can I force it to overwrite? This is the maven log:
[INFO]
[INFO] --- maven-jar-plugin:2.2:jar (default-jar) # message ---
[INFO]
[INFO] --- maven-install-plugin:2.3:install (default-install) # message ---
[INFO] **Skipped re-installing C:\dev\ws\Message\target\message-0.0.1.jar to C:\Users\Tim\.m2\repository\samba\message\message\0.0.1\message-0.0.1.jar, seems unchanged**
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.915s
[INFO] Finished at: Fri Sep 03 15:22:12 CEST 2010
[INFO] Final Memory: 7M/175M
[INFO] ------------------------------------------------------------------------
Okay, I think I just saw that Maven doesn't deploy the METAINF/MENIFEST.MF file with the other files in the targets. Seems I have to work on that somehow. Sorry, I'm new to Maven.
Be careful when using RELEASE Versions with maven. You should not "redeploy" them - as the contract is that they will never change anymore. If you deploy a RELEASE Version to a global Maven repository (e.g. Nexus) you will not be able to redeploy it again. You have to build a new Version if changes are necessary.
In phases of development use SNAPSHOT Versions (0.0.1-SNAPSHOT). These can be changed and redeployed.
If you are only working with your local repository the rules are not that strong but you should know about the RELEASE / SNAPSHOT version differences.
The problem was that I used the bundle plugin to generate osgi bundles. With these, the bundle plugin generates it's own MANIFEST.MF file and doesn't use the file that I put into my resources. In fact I also got some error when I tried to use my own MANIFEST.MF file in addition to the one generated by the bundle plugin.