Coder Social home page Coder Social logo

rosjava_build_tools's Introduction

RosJava

Metapackage for the official rosjava repositories.

See the rosjava_core readme for more details.

rosjava_build_tools's People

Contributors

adamantivm avatar barraq avatar damonkohler avatar gautamjain avatar ivanpauno avatar meyerj avatar sirver avatar stonier avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rosjava_build_tools's Issues

catkin_create_android_project error

I'm having an issue when create an android project. It shows the following error:

`~/Workspaces/ros/arduino_p1/src/p1_remote$ catkin_create_android_project -t 25 -p lan.robonet.p1_remote.remote remote

Creating android project
Name : remote
Target Ver: 25
Java Name : lan.robonet.p1_remote.remote
Activity : Remote

Command: ['android', 'create', 'project', '-n', 'remote', '-p', '/home/randy/Workspaces/ros/arduino_p1/src/p1_remote/remote', '-k', 'lan.robonet.p1_remote.remote', '-t', 'android-25', '-a', 'Remote']
The android command is no longer available.
For manual SDK and AVD management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager
Error
[error] init() takes at least 3 arguments (2 given) : <type 'exceptions.TypeError'>`

Any idea how to solve it would be greatly appreciated!

Update Indigo install instructions?

Hi,

I've tried to follow the install instructions of the README.md file in an Ubuntu 14.04 with Indigo.

I've seen that the wstool command instructions point to hydro-devel git-branches instead of indigo. Since I've thought that this should be an error, I used indigo instead and executed the wstool commands sucessfully downloading the code.

However, when executing the catkin_make I've got the following error:

  -- catkin 0.6.9
  -- BUILD_SHARED_LIBS is on
  -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  -- ~~  traversing 2 packages in topological order:
  -- ~~  - rosjava_build_tools
  -- ~~  - rosjava_core
  -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  -- +++ processing catkin package: 'rosjava_build_tools'
  -- ==> add_subdirectory(rosjava_build_tools)
  -- +++ processing catkin package: 'rosjava_core'
  -- ==> add_subdirectory(rosjava_core)
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /home/mbotuser/rosjava/build
  ####
  #### Running command: "make -j4 -l4" in "/home/mbotuser/rosjava/build"
  ####
  Scanning dependencies of target gradle-rosjava_core
  [100%] Gradling tasks for rosjava_core

  FAILURE: Build failed with an exception.

  * What went wrong:
  A problem occurred configuring root project 'rosjava_core'.
  > Could not resolve all dependencies for configuration ':classpath'.
     > Could not find any version that matches org.ros.rosjava_bootstrap:gradle_plugins:[0.2,0.3).
       Required by:
           :rosjava_core:unspecified

  * Try:
  Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
  make[2]: *** [rosjava_core/CMakeFiles/gradle-rosjava_core] Error 1
  make[1]: *** [rosjava_core/CMakeFiles/gradle-rosjava_core.dir/all] Error 2
  make: *** [all] Error 2
  Invoking "make" failed

Is it anything more that should be take into account to install it?

Thanks!

Move license.

General preference is to have it somewhere else.

  • Add it to the branches and re-insert it at the top of every python/cmake file.
  • Add it to the readme or master branches.

I understand the first option is a guaranteed no-maintenance way of doing it (no moving url's) even if it does make the python files noisy.

Missing template files in packaged rosjava_build_tools

See
http://answers.ros.org/question/89011/catkin_create_rosjava_pkg/

Also to reproduce:

$ catckin_create_rosjava_pkg rosjava_foo [error] [Errno 2] No such file or directory: '/opt/ros/hydro/lib/python2.7/dist-packages/rosjava_build_tools/templates/rosjava_package/CMakeLists.txt.in' : <type 'exceptions.ioerror'="">

$ dpkg -L ros-hydro-rosjava-build-tools | grep templates
/opt/ros/hydro/lib/python2.7/dist-packages/rosjava_build_tools/templates
/opt/ros/hydro/lib/python2.7/dist-packages/rosjava_build_tools/templates/android_package
....

but no .../templates/rosjava_package/

rosjava with indigo and kitkat

Hello,

I have installed rosjava from deb and from source (not knowing if this could case any issues) I've also installed android core but I have an error because I don't have the android 10 nor android 15 sdks. I would like to use rosjava with Ros Indigo on Ubuntu 14.04 on an android 19 (KitKat), is this possible? is there another option to connect a rosnode with android? for all I've seen it's only usable with Android 10 and android 15 but I have android v19.

Thanks in advance

Dependency Generation fails if depends on package with action files (Ubuntu 16.04/ROS Kinetic)

In attempting to build a rosjava package with dependency on a custom msg which in turn has dependencies on other standard ROS messages (e.g. sensor_msgs, std_msgsetc), the build is seen to fail (~90% of the time) the first time a catkin build --this command is run for the package. All subsequent builds will execute successfully.

The build failure reports the absence of the java binaries for the custom_msg package, which indeed seems to be the case (I can see that no binaries are generated for it in the devel/share/maven space). However, the java binaries for its dependencies are generated (i.e. the standard ROS message) and seen in the folder stated above. Hence, I am not quite sure why the java binaries for the custom msg package are not generated.

Upon executing another catkin build, the java binaries are now generated for the custom msg package (probably because the java binaries for its dependencies already exist from the previous build operation) and the build executes successfully.

Note that I have cloned the source of standard ROS messages to my ROS workspace, in order to build the jars for these messages on the fly.

Another interesting item of note is that running the same operation on another system with similar specs shows a higher success rate (~90% success) on the first build but does occasionally fail (on the first build after a catkin clean).

Running rosjava nodes using rosrun

I noticed that currently there is no "standard" way of calling a rosjava node in the regular ROS way (i.e. rosrun [package] [node] [params]).
After trying this out a little bit, I figured that we are just one step away from there (I updated the tutorials a bit). Basically, after following the standard steps to create a package, you can use rosrun like this:

# rosrun [package] [rosjava project] [node class full name]
rosrun rosjava_catkin_package_a my_pub_sub_tutorial com.github.rosjava.rosjava_catkin_package_a.my_pub_sub_tutorial.Talker

Because Gradle creates an executable script which calls RosRun class in rosjava, with the class to execute as its parameter.

The problem is that the task installApp actually creates two executable scripts inside the package. rosrun will then ask the user which one to execute instead of executing it directly.

[rosrun] You have chosen a non-unique executable, please pick one of the following:
1) /home/juan/rosjava_test_ws/src/package/project/build/scripts/project
2) /home/juan/rosjava_test_ws/src/package/project/build/install/project/bin/project
3) /home/juan/rosjava_test_ws/src/package/project/build/scripts/project
4) /home/juan/rosjava_test_ws/src/package/project/build/install/project/bin/project

If we could just eliminate the scripts under scripts directory, rosrun would work right away.

Two quick solutions come to my mind. The first one is to tweak the rosjava project template to delete them, adding something like this:

installApp.doLast {
    file('build/scripts').deleteDir()
}

The second one would be to use a custom plugin instead of application (i.e. ros-java-application), which would add the application plugin and a new task ("cleanup" or something like that). Then, tweak the CMakeLists to call this new cleanup task after installApp.
Perhaps there is a better option to tweak installApp directly from a plugin instead of using the project level build.gradle, but I really don't know how to do that in a clean way.

To sum up, this would allow using rosrun just like a regular ROS package right after using catkin_make and sourcing the workspace.

If this sounds good, I offer myself to create a PR with the fixes. Thoughts?
/cc @adamantivm @ernestmc

cmake find_gradle doesn't work on macosx

This is just simple cmake code, so possibilities for problems are pretty small. The only thing I can think of right now is that gradlew is simply nonexistant at the root of a catkin_create_rosjava_package'd package.

This would imply the code used to generate gradlew may not be working.

Louise can you confirm that there is no gradlew there after you catkin_create_rosjava_package?

ModuleNotFoundError: No module named 'console'

If I git clone the rosjava packages into ~/catkin_ws/src then do catkin_make, I get several errors of the following form:

Traceback (most recent call last):
  File "/home/luke/catkin_ws/src/genjava/scripts/genjava_gradle_project.py", line 11, in <module>
    import genjava
  File "/home/luke/catkin_ws/devel/lib/python3.7/site-packages/genjava/__init__.py", line 35, in <module>
    exec(__fh.read())
  File "<string>", line 39, in <module>
  File "/home/luke/catkin_ws/src/genjava/src/genjava/genjava_main.py", line 45, in <module>
    import rosjava_build_tools
  File "/home/luke/catkin_ws/devel/lib/python3.7/site-packages/rosjava_build_tools/__init__.py", line 35, in <module>
    exec(__fh.read())
  File "<string>", line 7, in <module>
ModuleNotFoundError: No module named 'console'

What seems to be happening is that ~/catkin_ws/devel/lib/python3.7/site-packages/rosjava_build_tools/__init__.py is calling exec(__fh.read()) on the file ~/catkin_ws/src/rosjava_build_tools/src/rosjava_build_tools/__init__.py, which includes the line import console, which is supposed to import ~/catkin_ws/src/rosjava_build_tools/src/rosjava_build_tools/console.py. However, console.py is not found, because the Python package path doesn't include ~/catkin_ws/src/rosjava_build_tools/src/rosjava_build_tools.

To confound things, Python includes a (non-default) package console, which if installed, will trigger errors of the following form instead when import console is invoked:

Traceback (most recent call last):
  File "/home/luke/catkin_ws/src/genjava/scripts/genjava_gradle_project.py", line 11, in <module>
    import genjava
  File "/home/luke/catkin_ws/devel/lib/python3.7/site-packages/genjava/__init__.py", line 35, in <module>
    exec(__fh.read())
  File "<string>", line 39, in <module>
  File "/home/luke/catkin_ws/src/genjava/src/genjava/genjava_main.py", line 45, in <module>
    import rosjava_build_tools
  File "/home/luke/catkin_ws/devel/lib/python3.7/site-packages/rosjava_build_tools/__init__.py", line 35, in <module>
    exec(__fh.read())
  File "<string>", line 7, in <module>
  File "/home/luke/.local/lib/python3.7/site-packages/console/__init__.py", line 36, in <module>
    _CHOSEN_PALETTE = _choose_palette()
  File "/home/luke/.local/lib/python3.7/site-packages/console/detection.py", line 90, in choose_palette
    result, pal = detect_palette_support(basic_palette=pal)
  File "/home/luke/.local/lib/python3.7/site-packages/console/detection.py", line 207, in detect_palette_support
    result, pal_name, basic_palette = _find_basic_palette(result)
  File "/home/luke/.local/lib/python3.7/site-packages/console/detection.py", line 252, in _find_basic_palette
    if get_terminal_color('index', 2)[0][:2] == '4e':
  File "/home/luke/.local/lib/python3.7/site-packages/console/detection.py", line 481, in get_terminal_color
    with TermStack() as fd:
  File "/home/luke/.local/lib/python3.7/site-packages/console/detection.py", line 52, in __enter__
    self.orig_attrs = self.termios.tcgetattr(self.fd)
termios.error: (25, 'Inappropriate ioctl for device')

Update create package commands to sdkmanager

Starting with version 25.3.1, the Android SDK Tools has deprecated the android command, used by i.e.: catkin_create_android_package.
These commands need to be updated to use the new available commands.

See #31

rosjava_tools repository error:Setting up Android Studio & SDK with Ros

Hello,

On this website there is a command that is using link from this repository.

=====================command========================
wstool init -j4 ~/rosjava/src https://raw.github.com/rosjava/rosjava_tools/hydro-devel/rosjava.rosinstall

but i am unable to execute this command i am getting the following error.

ERROR in config: Unable to download URL [https://raw.github.com/rosjava/rosjava_tools/hydro-devel/rosjava.rosinstall]: HTTP Error 404: Not Found

Kindly let me know is the following link still correct or not??
https://raw.github.com/rosjava/rosjava_tools/hydro-devel/rosjava.rosinstall

Thanks

Official Debian/Ubuntu package is missing templates

The rosjava_build_tools package in the ROS apt repositories is missing nearly all of the templates, making it impossible to create a new package or project. I "patched" around this issue by copying the templates from the 0.1.23 release to the appropriate location.

Talker/Listener application template

Default catkin_create_rosjava_project should create talker/listener as everyone seems to have trouble with this.

This also means converting this into an app template.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.