windows7在python中调用java安装pyjnius问题
妤穆 2016-11-01 04:06:53 在windows7-32位安装了 python3.4 现在想在python中调用java
python34
mingw-get-setup.exe
Cython-0.25.1.tar.gz (Cython-0.25.1-cp34-none-win32.whl)两种都试过
pyjnius
1: mangw-32 在cmd中运行命令 gcc -v 是成功的,打印了如下:( 安装了Basic SetUp的全部,除了mingw32-gcc-fortran,对应bin也加入系统Path中)
D:\>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=d:/mingw/bin/../libexec/gcc/mingw32/5.3.0/lto-wrapper.exe
Target: mingw32
Configured with: ../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu --host=m
ingw32 --prefix=/mingw --disable-win32-registry --target=mingw32 --with-arch=i58
6 --enable-languages=c,c++,objc,obj-c++,fortran,ada --enable-static --enable-sha
red --enable-threads=posix --with-dwarf2 --disable-sjlj-exceptions --enable-vers
ion-specific-runtime-libs --enable-libstdcxx-debug --with-tune=generic --enable-
libgomp --disable-libvtv --enable-nls
Thread model: posix
gcc version 5.3.0 (GCC)
2:D:\Program Files\Python34\Lib\distutils 创建文件distutils.cfg,内容如下:
[build]
compiler = mingw32
[build_ext]
compiler = mingw32
3、 安装Cython-0.25.1.tar.gz, python setup.py install,部分信息
Processing Cython-0.25.1-py3.4-win32.egg
creating d:\program files\python34\lib\site-packages\Cython-0.25.1-py3.4-win32.e
gg
Extracting Cython-0.25.1-py3.4-win32.egg to d:\program files\python34\lib\site-p
ackages
Adding Cython 0.25.1 to easy-install.pth file
Installing cythonize-script.py script to D:\Program Files\Python34\Scripts
Installing cythonize.exe script to D:\Program Files\Python34\Scripts
Installing cythonize.exe.manifest script to D:\Program Files\Python34\Scripts
Installing cython-script.py script to D:\Program Files\Python34\Scripts
Installing cython.exe script to D:\Program Files\Python34\Scripts
Installing cython.exe.manifest script to D:\Program Files\Python34\Scripts
Installing cygdb-script.py script to D:\Program Files\Python34\Scripts
Installing cygdb.exe script to D:\Program Files\Python34\Scripts
Installing cygdb.exe.manifest script to D:\Program Files\Python34\Scripts
Installed d:\program files\python34\lib\site-packages\cython-0.25.1-py3.4-win32.
egg
Processing dependencies for Cython==0.25.1
Finished processing dependencies for Cython==0.25.1
D:\Program Files\Cython-0.25.1>
4 安装 pyjnius, cmd : python setup.py install
D:\>cd D:\Program Files\kivy-pyjnius
D:\Program Files\kivy-pyjnius>python setup.py install
D:\Program Files\Python34\lib\site-packages\cython-0.25.1-py3.4-win32.egg\Cython
\Distutils\old_build_ext.py:30: UserWarning: Cython.Distutils.old_build_ext does
not properly handle dependencies and is deprecated.
"Cython.Distutils.old_build_ext does not properly handle dependencies "
WARNING: Not able to assign machine() = x86 to a cpu value!
Using cpu = 'i386' instead!
D:\Program Files\Python34\lib\site-packages\setuptools\dist.py:285: UserWarning:
Normalizing '1.1-dev' to '1.1.dev0'
normalized_version,
running install
running bdist_egg
running egg_info
writing jnius.egg-info\PKG-INFO
writing dependency_links to jnius.egg-info\dependency_links.txt
writing requirements to jnius.egg-info\requires.txt
writing top-level names to jnius.egg-info\top_level.txt
reading manifest file 'jnius.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*COPYING'
writing manifest file 'jnius.egg-info\SOURCES.txt'
installing library code to build\bdist.win32\egg
running install_lib
running build_py
running build_ext
skipping 'jnius\jnius.c' Cython extension (up-to-date)
creating build\bdist.win32\egg
creating build\bdist.win32\egg\jnius
copying build\lib.win32-3.4\jnius\jnius.pyd -> build\bdist.win32\egg\jnius
copying build\lib.win32-3.4\jnius\reflect.py -> build\bdist.win32\egg\jnius
copying build\lib.win32-3.4\jnius\signatures.py -> build\bdist.win32\egg\jnius
copying build\lib.win32-3.4\jnius\__init__.py -> build\bdist.win32\egg\jnius
copying build\lib.win32-3.4\jnius_config.py -> build\bdist.win32\egg
byte-compiling build\bdist.win32\egg\jnius\reflect.py to reflect.cpython-34.pyc
byte-compiling build\bdist.win32\egg\jnius\signatures.py to signatures.cpython-3
4.pyc
byte-compiling build\bdist.win32\egg\jnius\__init__.py to __init__.cpython-34.py
c
byte-compiling build\bdist.win32\egg\jnius_config.py to jnius_config.cpython-34.
pyc
creating stub loader for jnius\jnius.pyd
byte-compiling build\bdist.win32\egg\jnius\jnius.py to jnius.cpython-34.pyc
creating build\bdist.win32\egg\EGG-INFO
copying jnius.egg-info\PKG-INFO -> build\bdist.win32\egg\EGG-INFO
copying jnius.egg-info\SOURCES.txt -> build\bdist.win32\egg\EGG-INFO
copying jnius.egg-info\dependency_links.txt -> build\bdist.win32\egg\EGG-INFO
copying jnius.egg-info\requires.txt -> build\bdist.win32\egg\EGG-INFO
copying jnius.egg-info\top_level.txt -> build\bdist.win32\egg\EGG-INFO
writing build\bdist.win32\egg\EGG-INFO\native_libs.txt
zip_safe flag not set; analyzing archive contents...
jnius.__pycache__.jnius.cpython-34: module references __file__
creating 'dist\jnius-1.1.dev0-py3.4-win32.egg' and adding 'build\bdist.win32\egg
' to it
removing 'build\bdist.win32\egg' (and everything under it)
Processing jnius-1.1.dev0-py3.4-win32.egg
creating d:\program files\python34\lib\site-packages\jnius-1.1.dev0-py3.4-win32.
egg
Extracting jnius-1.1.dev0-py3.4-win32.egg to d:\program files\python34\lib\site-
packages
Adding jnius 1.1.dev0 to easy-install.pth file
Installed d:\program files\python34\lib\site-packages\jnius-1.1.dev0-py3.4-win32
.egg
Processing dependencies for jnius==1.1.dev0
Searching for cython==0.25.1
Best match: cython 0.25.1
Processing cython-0.25.1-py3.4-win32.egg
cython 0.25.1 is already the active version in easy-install.pth
Installing cython-script.py script to D:\Program Files\Python34\Scripts
Installing cython.exe script to D:\Program Files\Python34\Scripts
Installing cython.exe.manifest script to D:\Program Files\Python34\Scripts
Installing cygdb-script.py script to D:\Program Files\Python34\Scripts
Installing cygdb.exe script to D:\Program Files\Python34\Scripts
Installing cygdb.exe.manifest script to D:\Program Files\Python34\Scripts
Installing cythonize-script.py script to D:\Program Files\Python34\Scripts
Installing cythonize.exe script to D:\Program Files\Python34\Scripts
Installing cythonize.exe.manifest script to D:\Program Files\Python34\Scripts
Using d:\program files\python34\lib\site-packages\cython-0.25.1-py3.4-win32.egg
Searching for six==1.10.0
Best match: six 1.10.0
Processing six-1.10.0-py3.4.egg
six 1.10.0 is already the active version in easy-install.pth
Using d:\program files\python34\lib\site-packages\six-1.10.0-py3.4.egg
Finished processing dependencies for jnius==1.1.dev0
D:\Program Files\kivy-pyjnius>
5 、测试失败
测试文件testjava.py:
from jnius import autoclass
Stack = autoclass('java.util.Stack')
stack = Stack()
stack.push('hello')
stack.push('world')
print(stack.pop())
print(stack.pop())
报错信息:
"D:\Program Files\Python34\python.exe" E:/py/BondDjango/BondImplicitRate/testjava.py
Traceback (most recent call last):
File "E:/py/BondDjango/BondImplicitRate/testjava.py", line 1, in <module>
from jnius import autoclass
File "D:\Program Files\Python34\lib\site-packages\jnius-1.1.dev0-py3.4-win32.egg\jnius\__init__.py", line 12, in <module>
from .jnius import *
ImportError: DLL load failed: 找不到指定的模块。