Category Archives: Error

[Solved] volatile was removed and now has no effect. Use `with torch.no_grad():` instead.

Solution: volatile was removed and now has no effect. Use with torch.no_grad():instead.

Source code

self.priors = Variable(self.priorbox.forward(), volatile=True)

 

the reason

It volatilehas been removed in the torch version .
Before pytorch 0.4.0 input = Variable(input, volatile=True) set volatile to True, as long as an input is volatile, the output is also volatile, which can guarantee that there is no intermediate state; but canceled after pytorch 0.4.0 The volatile mechanism is replaced with functions such as torch.no_grad(), torch.set_grad_enable(grad_mode)
torch.no_grad() is a context manager.
When using pytorch , not all operations require the generation of calculation graphs (the construction of the calculation process to facilitate gradient back propagation and other operations). For the calculation operation of tensor, the default is to construct the calculation graph. In this case, you can use with torch.no_grad(): to force the subsequent content not to construct the calculation graph.
The torch.no_grad() will affect pytorch’s backpropagation mechanism. In the test, because it is determined that backpropagation will not be used, this mode can help save memory space. The same is true for torch.set_grad_enable(grad_mode)

change into

with torch.no_grad():
	self.priors = Variable(self.priorbox.forward())

or

self.priors = Variable(self.priorbox.forward())

How to Solve TypeError: type numpy.ndarray doesn‘t define __round__ method

Pycharm Warning TypeError: type numpy.ndarray doesn’t define round method

 

1.the problem
matrix = round(np.array([[1.5,2.3],[1,2],[1,2]]))
The error interface

Insert picture description here
type is wrong: the type numpy.ndarray does not define the __round__ method

2.solve
Change the round method to np.round
code show as below:

matrix = np.round(np.array([[1.5,2.3],[1,2],[1,2]]))

The solution of no module named ‘jinja2. Asyncsupport’

Background of the problem

When compiling Px4,

make px4_sitl_default gazebo

An error has been reported,

[0/535] Performing build step for 'sitl_gazebo'
[1/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/mb1240-xl-ez4/mb1240-xl-ez4-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/mb1240-xl-ez4/mb1240-xl-ez4-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/mb1240-xl-ez4/mb1240-xl-ez4.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[2/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/pixhawk/pixhawk-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/pixhawk/pixhawk-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/pixhawk/pixhawk.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[3/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/matrice_100/matrice_100-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/matrice_100/matrice_100-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/matrice_100/matrice_100.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[4/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/r200/r200-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/r200/r200-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/r200/r200.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[5/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/c920/c920-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/c920/c920-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/c920/c920.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[6/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/px4flow/px4flow-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/px4flow/px4flow-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/px4flow/px4flow.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[7/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/3DR_gps_mag/3DR_gps_mag-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/3DR_gps_mag/3DR_gps_mag-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/3DR_gps_mag/3DR_gps_mag.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[8/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/sf10a/sf10a-gen.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/sf10a/sf10a-gen.sdf 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/sf10a/sf10a.sdf.jinja /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo
Traceback (most recent call last):
  File "/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/jinja_gen.py", line 4, in <module>
    import jinja2
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 82, in <module>
    _patch_async()
  File "/usr/lib/python2.7/dist-packages/jinja2/__init__.py", line 78, in _patch_async
    from jinja2.asyncsupport import patch_all
ModuleNotFoundError: No module named 'jinja2.asyncsupport'
[9/9] Generating /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf
FAILED: /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf 
cd /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo && rm -f /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/scripts/xacro.py -o /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/rotors_description/urdf/iris_base.urdf /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/rotors_description/urdf/iris_base.xacro enable_mavlink_interface:=true enable_ground_truth:=false enable_wind:=false enable_logging:=false rotors_description_dir:=/home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/rotors_description send_vision_estimation:=true send_odometry:=false && gz sdf -p /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/rotors_description/urdf/iris_base.urdf >> /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf && rm -f /home/zth/catkin_ws/Firmware/Tools/sitl_gazebo/models/rotors_description/urdf/iris_base.urdf

gz: symbol lookup error: /usr/lib/x86_64-linux-gnu/libgazebo_common.so.9: undefined symbol: _ZN8ignition10fuel_tools12ClientConfig12SetUserAgentERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
ninja: build stopped: subcommand failed.
[2/535] Generating mixer_multirotor.generated.h
FAILED: src/lib/mixer/MultirotorMixer/mixer_multirotor.generated.h 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/src/lib/mixer/MultirotorMixer && /usr/bin/python3 /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tools/px_generate_mixers.py -f /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_bottom_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_top_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_t.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_deadcat.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_h.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_s250aq.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_vtail.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_cw.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_pusher.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tri_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/twin_engine.toml -o mixer_multirotor.generated.h
Failed to import numpy: 
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: cannot import name 'multiarray'


You may need to install it using:
    pip3 install --user numpy

[3/535] Generating mixer_multirotor_normalized.generated.h
FAILED: src/lib/mixer/MultirotorMixer/mixer_multirotor_normalized.generated.h 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/src/lib/mixer/MultirotorMixer && /usr/bin/python3 /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tools/px_generate_mixers.py --normalize -f /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_bottom_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_top_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_t.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_deadcat.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_h.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_s250aq.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_vtail.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_cw.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_pusher.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tri_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/twin_engine.toml -o mixer_multirotor_normalized.generated.h
Failed to import numpy: 
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: cannot import name 'multiarray'


You may need to install it using:
    pip3 install --user numpy

[4/535] Generating mixer_multirotor_6dof.generated.h
FAILED: src/lib/mixer/MultirotorMixer/mixer_multirotor_6dof.generated.h 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/src/lib/mixer/MultirotorMixer && /usr/bin/python3 /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tools/px_generate_mixers.py --sixdof -f /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_bottom_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/dodeca_top_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_t.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/hex_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_cox_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/octa_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_deadcat.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_h.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_plus.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_s250aq.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_vtail.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_wide.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_cw.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_x_pusher.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/quad_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/tri_y.toml /home/zth/catkin_ws/Firmware/src/lib/mixer/MultirotorMixer/geometries/twin_engine.toml -o mixer_multirotor_6dof.generated.h
Failed to import numpy: 
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: cannot import name 'multiarray'


You may need to install it using:
    pip3 install --user numpy

[5/535] Generating serial_params.c
FAILED: generated_params/serial_params.c 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/src/lib/parameters && /usr/bin/cmake -E make_directory /home/zth/catkin_ws/Firmware/build/px4_sitl_default/generated_params && /usr/bin/python3 /home/zth/catkin_ws/Firmware/Tools/serial/generate_config.py --params-file /home/zth/catkin_ws/Firmware/build/px4_sitl_default/generated_params/serial_params.c --serial-ports --config-files /home/zth/catkin_ws/Firmware/src/lib/battery/module.yaml /home/zth/catkin_ws/Firmware/src/drivers/gps/module.yaml /home/zth/catkin_ws/Firmware/src/modules/mavlink/module.yaml
Failed to import jinja2: No module named 'jinja2.asyncsupport'

You may need to install it using:
    pip3 install --user jinja2

FAILED: external/Stamp/sitl_gazebo/sitl_gazebo-build 
cd /home/zth/catkin_ws/Firmware/build/px4_sitl_default/build_gazebo && /usr/bin/cmake --build .
ninja: build stopped: subcommand failed.
Makefile:198: recipe for target 'px4_sitl_default' failed
make: *** [px4_sitl_default] Error 1

The first mistake is:

ModuleNotFoundError: No module named 'jinja2.asyncsupport'

Solution process:

1. Install jinja2 according to the command given in the error prompt:

zth@SugoAsurada:~/catkin_ws/Firmware$ pip install jinja2
Collecting jinja2
  Using cached https://files.pythonhosted.org/packages/30/9e/f663a2aa66a09d838042ae1a2c5659828bb9b41ea3a6efa20a20fd92b121/Jinja2-2.11.2-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from jinja2)
  Downloading https://files.pythonhosted.org/packages/fb/40/f3adb7cf24a8012813c5edb20329eb22d5d8e2a0ecf73d21d6b85865da11/MarkupSafe-1.1.1-cp27-cp27mu-manylinux1_x86_64.whl
Installing collected packages: MarkupSafe, jinja2
Successfully installed MarkupSafe-1.1.1 jinja2-2.11.2

The version of jinja2 installed with this command is 2.11.2.
In ~ / catkin_ View the version of jinja2 under the directory WS / firmware,

zth@SugoAsurada:~/catkin_ws/Firmware$ python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import jinja2
>>> jinja2.__version__
'2.10'
>>> exit()

The resulting version is 2.10.
Obviously, jinja2 was not installed in the path we needed.

2. Check the location of jinja2 in the current path, and find the cause of the problem

zth@SugoAsurada:~/catkin_ws/Firmware$ python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import jinja2
>>> jinja2.__file__
'/usr/lib/python2.7/dist-packages/jinja2/__init__.pyc'
>>> exit()

After coming to the directory ‘/ usr / lib / python2.7/dist-packages/jinja2’, I found that there are no files in the directory asyncsupport.py . The PY file is missing from the official website.

3. Delete jinja2 from the specified directory and install a new jinja2

Unload command:

sudo  rm -r /usr/lib/python2.7/dist-packages/jinja2

Output results:

zth@SugoAsurada:~/catkin_ws/Firmware$ sudo  rm -r /usr/lib/python2.7/dist-packages/jinja2
zth@SugoAsurada:~/catkin_ws/Firmware$ python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import jinja2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named jinja2
>>> exit()

Installation command:

sudo pip install jinja2 --target=/usr/lib/python2.7/dist-packages

Inspection output:

zth@SugoAsurada:~/catkin_ws/Firmware$ python
Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import jinja2
>>> jinja2.__file__
'/usr/lib/python2.7/dist-packages/jinja2/__init__.pyc'
>>> jinja2.__version__
'2.11.2'
>>> exit()

Solution of “TCLs parsing failed” when dnf starts

Solution of “TCLs parsing failed” when dnf starts

Today, after copying the DNF file from the virtual machine and then logging in to the game with wegame, there is a problem. The pop-up box shows that the service failed to connect to the channel. Then I log in with the client and the following prompt pops up:

The solution is as follows:

X:\Dungeons and Warriors\TCLS\Client.exe
X: refers to the location of the disk where it is stored  

These can solve the TCLs parsing failed error.

RuntimeError: Integer division of tensors using div or / is no longer supported, and in a future rel

RuntimeError: Integer division of tensors using div or/is no longer supported, and in a future release div will perform true division as in Python 3. Use true_divide or floor_divide (// in Python) instead.

from torchvision import transforms
import numpy as np

data = np.random.randint(0, 255, size=12)
img = data.reshape(2, 2, 3)
print(img.shape)
img_tensor = transforms.ToTensor()(img)  # Convert to tensor
print(img_tensor)
print(img_tensor.shape)
print("*" * 20)
norm_img = transforms.Normalize((10, 10, 10), (1, 1, 1))(img_tensor)  # Perform normative processing
print(norm_img)

Operation effect:

reason:

Pytorch1.5.0 is OK, but when upgrading to 1.6.0, it is found that division between tenor and int cannot be directly performed with ‘/’.

Solution:

Standardize the data processing

Example code:

from torchvision import transforms
import numpy as np

data = np.random.randint(0, 255, size=12)
img = data.reshape(2, 2, 3)
print(img.shape)
img_tensor = transforms.ToTensor()(img)  # convert to tensor
print(img_tensor)
print(img_tensor.shape)
print("*" * 20)
img_tensor = img_tensor.float()  # Add this line
norm_img = transforms.Normalize((10, 10, 10), (1, 1, 1))(img_tensor) # Perform normalization
print(norm_img)

Results of operation:

Android studio Error:Execution failed for task ‘: app:transformResourcesWithMergeJavaResForDebug ‘

Android studio error Error:Execution failed for task

Recently, when doing the face recognition check-in system based on Android platform, after importing the third party’s lib package, Android studio reported the following error:

Error:Execution failed for task ‘: app:transformResourcesWithMergeJavaResForDebug ’.
com.android.build . api.transform.TransformException : com.android.builder . packaging.DuplicateFileException : Duplicate files copied in APK META-INF/LICENSE
File1: E:\Workspaces\Swface\app\libs\httpcore-4.4.4.jar
File2: E:\Workspaces\Swface\app\libs\httpclient-4.5.2.jar

After consulting the data, it is found that there are duplicate contents loaded in the meta-inf directory of the jar package. Open the corresponding jar package
sure enough, both of the two jar packages have license, and further Click to find that the contents are exactly the same. However, it seems that the next three files are also duplicate (only there is no clear prompt in the error report), so we can solve them all at once
all Now that we know that it is caused by repeatedly loading files, the solution is to remove the repeatedly loaded files during compilation. The specific operations are as follows:

    1. Open app\ build.gradle File
    1. 2. Modify the configuration as follows:
buildTypes {
          ...... (omit part of the code)
          // Add the following code here
          packagingOptions {
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
            exclude 'META-INF/ASL2.0'
            exclude 'META-INF/notice.txt'
        }
 }       
``

3. Rebuild project

A link to the original text is attached

http://stackoverflow.com/questions/34031395/errorexecution-failed-for-task-apptransformresourceswithmergejavaresfordebug

The tree component in easyUI does not display data or displays undefined solutions

In recent days, I have learned easyUI and used the tree component. After n days of pain, I finally came out. Now I will summarize some problems.

1. In the official demo, all the data is taken from the. JSON file. In practical application, it is obviously impossible to do so. If you want to take it from the database, then the problem is, how to get it?There’s no explanation in the official demo, and I haven’t found any results after searching online for a long time

Methods 1:Ajax is fetched, after the web interface is loaded, the Ajax is called, and the value is spliced from the background in the database, and spliced into JSON. There are many methods of splicing. Here is not enumerated. After the completion of the mosaic, JSON is written back by response writer. In JS, the data parameter of tree is the returned JSON (time reason, this method is not tested, and the theory is feasible).

Method 2: root method 1 is similar: the following is the code

HTML code of tree:

<ul id="department_tree" class="easyui-tree"></ul>

JS code of tree:

/**
 * @argument Fetching data from a tree by URL
 * @author ZHENGWEI
 * @date 2015-5-8
 * @version 1.0
 */
$(document).ready(function(){
	/* Called when loading is complete*/
	$("#department_tree").tree({
		/*JSON spliced address*/
		url:'CompanyStaffAction!listCompanyDepartment.action',
		/*Linked lines*/
		lines:true,
		/*animation effect*/
		animate:true
	});
})

The URL is the action returned to JSON in the background, and the code is as follows

/**
	 * Search company's department information
	 * @author ZHENGWEI
	 * @throws JSONException 
	 * @throws IOException 
	 * @date 2015-5-7
	 */
	public String listCompanyDepartment() throws JSONException, IOException{
		//Set the encoding format to prevent Chinese characters from being garbled
		response.setCharacterEncoding("UTF-8");
		//return company department information
		List<CompanyDepartmentInfo> companyDepartmentInfoList = this.companyStaffService.listCompanyDepartment();
		// Declare the JSONArray object and build the tree
		JSONArray jsonChildTreeArray = new JSONArray();
		//condemn empty
		if(companyDepartmentInfoList.size() != 0){
			for(CompanyDepartmentInfo companyDepartmentInfo:companyDepartmentInfoList){
				JSONObject jsonChildInfoObject = new JSONObject();
				jsonChildInfoObject.put("id", '"'+companyDepartmentInfo.getDepartmentId()+'"');
				jsonChildInfoObject.put("text", companyDepartmentInfo.getDepartmentName());
				jsonChildTreeArray.put(jsonChildInfoObject);
			}
		}
		JSONObject jsonDepartmentTree = new JSONObject();
		jsonDepartmentTree.put("id", "0");
		jsonDepartmentTree.put("text", "CompanyDepartmentTree");
		jsonDepartmentTree.put("state", "open");
		// turn the jsonChildTreeArray into a child node
		jsonDepartmentTree.put("children", jsonChildTreeArray);
		//string type, add '[]' to JSON
		String treeData = jsonDepartmentTree.toString();
		treeData = "["+treeData+"]";
		// Declare PrintWriter variable to pass back JSON
		PrintWriter out = response.getWriter();
		out.write(treeData);
		return null;
	}

It must be noted that,

After the encapsulation of JSON, make sure to print it to see if there is a [] symbol package outside of JSON, otherwise tree can’t read the data!!!!

The final results are as follows:

 

 

It’s a very hard process… It’s tears when I talk too much, and many problems on the Internet can’t reach the point. I’ve thought about it for many days, and I hope that students who study in the future will avoid detours

Solution of Hibernate paging report only entering result set and not supporting requested operation

I checked the information on the Internet. The reason is that when pagination is used, the query result is empty, but pagination is also set, so an error will be reported.

There are two solutions:

Scheme 1, add conditions under paging code

public static List<?> getList(Session session , String HQL , int currentPage, int pageSize){
		Query q = session.createQuery(HQL);
		if(currentPage != 0 && pageSize != 0 && q.list().size()!= 0)
		{
		    int startRow = (currentPage-1)*pageSize;
		    q.setFirstResult(startRow);
		    q.setMaxResults(pageSize);
		}
	    List<?> list = q.list();
	    //Return search results
	    return list;
	 } 

The if condition is that when the query result is empty, there will be no pagination, so no error will be reported.

Scheme 2: add this sentence to the hibernate configuration file

<property name="jdbc.use_scrollable_resultset">false</property>

Anaconda Error: ‘Destination folder’ contains 2 spaces. This can cause problems with several conda packa

Anaconda installation error: ‘destination folder’ contains 2 spaces. This can cause problems with vertical CONDA packages. Please consider removing the space

In fact, there is a space in the directory during installation. Because it is installed under program files (x86), an error will be reported. It will prompt you to install CONDA packages later. Just change the path without space.