how to connect to php parser in netbeans platform - java

I am writing a code completion plugin for a PHP library in Java / Netbeans Platform.
I need to find a way to obtain a reference to one of the PHP modules so I can interpret part of the source, anyone experience with this kind of problem?
How do I obtain a reference to the PHP module (for code completion plugin module)
What is the recommended approach to integrate a code completer with PHP module on the NetBeans platform?
Cheers and thanks in advance
Gabor

You would use the org.netbeans.modules.php.api and some other core stuff and implement a new CompletionProvider. (MyCompleter implements CompletionProvider)
import org.netbeans.modules.php.api.phpmodule.PhpModule;
import org.netbeans.modules.php.api.util.UiUtils;
import org.netbeans.modules.php.api.executable.PhpInterpreter;
and maybe Tokenizer and Completion could be usefull
Tokenizer
import org.netbeans.api.lexer.Token;
import org.netbeans.api.lexer.TokenSequence;
Completion
import org.netbeans.spi.editor.completion.CompletionProvider;
import org.netbeans.spi.editor.completion.CompletionResultSet;
import org.netbeans.spi.editor.completion.CompletionTask;
import org.netbeans.spi.editor.completion.support.AsyncCompletionQuery;
import org.netbeans.spi.editor.completion.support.AsyncCompletionTask;

In Netbeans, PHP support is initially chosen in the version you decide to download. However, you can add PHP support like you describe after the fact through Netbean's plugin functionality. Just go to Tools>Plugins and click on the Available Plugins tab at the top. There you will see a host of PHP related plugins, from Manual references to Framework specific helpers that you can install. You can also install individual plugins downloaded from here manually through another tab in the same menu interface.
See here to look at the table for download options... Notice the far right, with all the dots, that's All. Only way to start out with Java + PHP support is install support for all other languages too. A little hefty if you have focused development needs, which is probably why you skipped this.
Hope this helps!
Netbeans Downloads

Related

Using Libraries In Netbeans Java With Ant

This is my first StackOverflow question, and I'm also a Grade 12 student, so apologies if it is a stupid one - feel free to let me know if it is, however, after numerous hours searching the internet, I can't find an answer to this.
this is not homework help.
Background
I am currently writing a program in Netbeans that will deal with large COVID datasets, and I'm looking to use some external libraries to make operations easier. The ones I've looked at are
https://github.com/jtablesaw/tablesaw and https://github.com/nRo/DataFrame.
However, I have only ever used "Java with Ant", and both of these GitHub's only mention using the library through Maven dependencies in the pom.xml file. I have never used Maven, and I am very unfamiliar with Build Tools in general. As when I was introduced to Java, my teacher instructed me to use Java with Ant. That being the case, any time I have used an external library before I have simply added the .jar files into my library folder and used
import foo.bar; or import foo.*; to use the libraries.
My question
Is there a way for me to use either of these libraries without switching build tools? For example, download the source and make the .jar's in a way that isn't overly tedious, so that I can use the libraries the same way I am used to? Or, perhaps something I'm missing that allows me to download them in that format? If not, seeing as almost every Github library I find instructs me to use it through Maven dependency, should I stop using Java with Ant altogether and start learning how to write programs using Maven?
Any insight is greatly appreciated. If this has already been answered, feel free to link the answer and sorry for cluttering up the forum. Thanks.
From one of the Maven websites you can download the libraries and use them as normal. First find the artifact page, for example using mvnrepository.com as shown below, or you could use the https://search.maven.org/:
Find the relevant page by searching for the artifact, then once there you can choose the version:
Then click on "View all" to see the artifact jar files:
Then lastly right-click the file you need and choose save:

Setting a default starting file for Eclipse

I am learning to use a programming language based on Java called Processing that's basically a library. While it comes with it's own IDE, I find too minimal and basic, so I wish to use Eclipse instead.
While I have been able to get it to work, it's a whole lot of hassle to import the library everytime I start a new project, and I was wondering if it's possible to set some sort of default starting "skeleton" for Eclipse where everything is already loaded and ready to go.
Thanks in advance!
While you can create an eclipse template, it's worth trying the Proclipsing Processing plugin.
On top of creating Processing projects it makes it easy to manage/import Processing libraries and (hopefully still) generate applications.

How to download Packages for Android Studio?

I just started Android Development yesterday and just finished with my first Activity. On running it, I'm getting errors like
**Error:(4, 37) error: package android.support.design.widget does not exist**
As I never post without it, I've already done plenty of searching on this. Basically, what I've understood is that it couldn't find that Widget Package on my PC. So, do I have to download it? If yes, then how?
People on internet had similar problem with Packages and almost every post has different answer to this. Some say change your Gradle File others say Update your Studio (have done it).
Any kind of explanation or bit of knowledge with the solution would be highly appreciated. I'm a kind of geek who want to get concepts and basics clear. So, it would be great if you include the reason and technicality behind this too with your answer. Thanks. :)
It's a design library for Android apps development and as #Dominique pointed have a look at that page and copy paste that compile 'com.android.support:design:22.2.0' line in your project gradle file and press the sync button. Your project will sync in a few moments and the design library will be downloaded. Now you can use this library and there won't be any errors.
No, in Java "package" is not a "library" or a "piece of software" (like it is in some other languages). Package is what classes belong to - you might think of packages as directories containing Java files (it is a simplification, but it works). In Java libraries are packaged into (usually) "jars" (those jars usually contain classes divided into packages), so what you need to download is "jar".
So, first thing you need to check is: what library contains the package, and configure your IDE accordingly. The package in question belongs, I think to the so called android support library, which you can install using the SDK tool.

Import Neo4J API in Netbeans

For a project I am building a Java GUI from which queries can be sent to Neo4j, to make it easier to do particular analyses. To get this all working, I have downloaded a .jar folder containing all relevant classes (neo4j-javadocs-2.1.7-javadoc.jar). I have loaded the library through the project->properties->libraries->Add JAR, but I can't seem to import the classes I want to use in my GUI (neither automatically nor manually).
I am dabbling in Java, so it is probably a basic oversight that I am making, but with the help from tutorials online and trying different commands (like entering the path of the .jar file) I can't get it working. One of these tutorials is specific on the Neo4j library, so I am very confused. That tutorial is written for Eclipse, instead of NetBeans which I am working with, but as far as my knowledge goes that shouldn't matter for the commands
I don't have enough reputation to post direct images, but this link contains a screenshot. If more information is required, let me know. http://i.stack.imgur.com/lUytK.png
Additionally, when I normally add a class that is not imported, there is an automatic function to import the class. This option is missing for my specific class, so maybe I added the library in an incorrect way?
http://i.stack.imgur.com/QeDX4.png
Edit: Issue resolved thanks to a colleague that came in. Apparently I loaded the Javadoc where I should have loaded to individual classes from the lib directory.
It really should work.
Try to save all changes. NetBeans reparses the classes when you save them.
Try to build your project manually from command line using Ant build script
Use Maven, Ivy or Gradle for Dependency Management then you can depend on the Neo4j artifacts.
For sending queries to the server you actually don't need Neo4j artifacts.
You can also use the JDBC driver, see http://neo4j.com/developer/java

How can I use Android with Java and a core made with Scala?

I made a small project using Scala (SBT + IntellijIDEA) that provides me a set of classes and other functions that I want to use in Android. I will call this project $core.
So, keeping that in mind I tried to first only use scala. I tried to create an Android Project using android-plugin and I got it.
But what I really want is to use my $core in an Android Project AND expand the $core classes using Java. $core provides an API that I would like more people to use and they probably don't know Scala so Java would be perfect. Besides, I need to go into a safe route with Android. I saw some info that scala takes a lot of time to compile into Android and has some limitations (like with parceblles).
I already tried to use the classes in eclipse with the import class folder option. I even tried to generate a jar so at least I would have a way to run it and no success. Always the NoClassDef error when I try to use one class from the $core. I have tried to import also the scala compiler library, but didn't work out aswell...
Core isn't finished yet and I would like to develop on a single environment that allowed me to debug on the android device. How can I setup all of this?
PS: Changing to eclipse now maybe is better? Never tried android on intellijIDEA and In scala I can't debug over there, at least using ScalaCheck...
Is it possible that you are getting an noclassdeffound error when working with Scala code from java because you didn't add the Scala library to the java project or at least included the party of it that it's used in the Scala code in the jar?
Could you post the rest of the error?
You could package the core to .jar together with Scala library, use Proguard to remove all unused Scala library classes from it, and then use that jar as a regular library.

Categories