help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Java Error xlsread


From: Tatsuro MATSUOKA
Subject: Re: Java Error xlsread
Date: Tue, 31 Mar 2015 18:26:26 +0900 (JST)

----- Original Message -----

> From: Tatsuro MATSUOKA
> To: adrianc852 ; "help-octave
> Cc: 
> Date: 2015/3/31, Tue 18:05
> Subject: Re: Java Error xlsread
> ----- Original Message -----

>>  From: adrianc852 
>>  To: help-octave@
>>  Cc: 
>>  Date: 2015/3/31, Tue 13:54
>>  Subject: Re: Java Error xlsread
>> 
>> T hanks for the reply.  I received this error message when I tried to 
> install
>>  the io  package.
>> 
>> 
>>  pkg install -forge io
>>  warning: rmpath:
>> 
> C:\Octave\Octave-3.8.2\lib\octave\packages\io-2.2.7\i686-w64-mingw32-api-v49+:
>>  not found
>> 
>>  warning: (Automatic loading of spreadsheet I/O Java classlibs failed)
> 
> 
> 
> I have downloaded the latest 3.8.2-5 from mxeoctave.osuv.de
> and
>>>  cd C:\octave\Octave-3.8.2\src
>>>  build_packages
>>>  pkg load windows
>>>  pkg install -forge io
> 
> 
> 
> + ## PKG_ADD
> + ## add paths of io pkg java jars.
> 
> + ## First check if Java support was built in anyway
> + if (octave_config_info ("features").JAVA)
> +   ## OK, Java built-in / supported. Check environment var
> +   userdir = getenv ("OCTAVE_IO_JAVALIBS");
> +   if (ispc)
> +     homedir = getenv ("USERPROFILE");
> +     ## (MinGW) assume jar files are in /lib/java
> +     libdir = octave_config_info ("libdir");
> +     ## elseif (ismac)
> +     ##   ## Who knows where OSX keeps e.g., Apache POI stuff? if it does at 
> al
> l...
> +   elseif (isunix)
> +     homedir = tilde_expand ("~");
> +     ## On linux spreadsheet .jars are often found somewhere in 
> /usr/share/java
> 
> +     libdir = "/usr/share";
> +   else
> +     ## Set libdir to "." to avoid searching in a root dir
> +     libdir = ".";
> +   endif;
> +   ## Find LibreOffice or OpenOffice.org
> +   ooopath = '';
> +   ii = 0;
> +   ## Possible locations for  OOo or LO.
> +   bnam = {"C:/Program Files (X86)", "C:/Program Files", 
> "C:/Programs", "/opt",
>  "/usr/lib"};
> +   if (strcmpi (octave_config_info ("USE_64_BIT_IDX_T"), 
> "yes"))
> +     ## 64-bit Octave won't work with 32-bit LibreOffice/OpenOffice.org
> +     bnam (1) = [];
> +   endif;
> +   while (isempty (ooopath) && ii < numel (bnam))
> +     ooopath = glob ([bnam{++ii}, filesep, "[Ll]ibre[Oo]ffice*"]);
> +   endwhile;
> +   while (isempty (ooopath) && ii < numel (bnam))
> +     ooopath = glob ([bnam{++ii}, filesep, "[Oo]pen[Oo]ffice.org*"]);
> +   endwhile;
> +   while (isempty (ooopath) && ii < numel (bnam))
> +     ooopath = glob ([bnam{++ii}, filesep, "ooo*"]);
> +   endwhile;
> +   if (!isempty (ooopath))
> +     ooopath = ooopath {:};
> +   else
> +     ooopath = '';
> +   endif;
> +   ## One big try-catch to circumvent possible problems on Linux
> +   try
> +     if (!isempty (userdir))
> +       if (strcmpi (userdir, "no") || strcmpi (userdir, 
> "false") || strcmpi (us
> erdir, "0"))
> +         ## Do not load Java class libs .jar files). First clean up, then 
> retur
> n
> +         clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath'
> , 'ii');
> +         return;
> +       endif;
> +       ## First allow some time for io package to be fully loaded
> +       pause (0.25);
> +       ## Check first for user-, then system supplied jars
> +       if (exist (userdir) == 7)
> +         ## Userdir is a subdir
> +         spr_status = chk_spreadsheet_support (userdir, 0, ooopath);
> +       endif;
> +       ## Also try user's home directory
> +     elseif (isunix && !(strcmpi (userdir, "no") || strcmpi 
> (userdir, "false")
> || strcmpi (userdir, "0")))
> +       ## On non-Windows systems, automatic loading of Java classes is 
> opt-in d
> ue to
> +       ## excessive search time (see bug #42044). Most of the delay is due 
> to s
> earching
> +       ## for the Libre/OpenOffice.org jars
> +       clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath',
> 'ii');
> +       return;
> +     else
> +       ## Allow some time for io package to be fully loaded
> +       pause (0.25);
> +     endif;
> +     ## Try <HOME>/java
> +     spr_status = chk_spreadsheet_support ([homedir, filesep, 
> "java"], 0, ooopa
> th);
> +     ## Only then search for system-supplied jars. ooopath has been searched
> +     spr_status = chk_spreadsheet_support ([libdir, filesep, "java"], 
> 0);
> +   catch
> +     warning ("(Automatic loading of spreadsheet I/O Java classlibs 
> failed)\n")
> ;
> +   end_try_catch;
> + endif;
> + ## OK, Java built-in / supported. Check environment var
> + userdir = getenv ("OCTAVE_IO_JAVALIBS");
> + if (ispc)
> +   homedir = getenv ("USERPROFILE");
> +   ## (MinGW) assume jar files are in /lib/java
> +   libdir = octave_config_info ("libdir");
> +   ## elseif (ismac)
> +   ##   ## Who knows where OSX keeps e.g., Apache POI stuff? if it does at 
> all.
> ..
> + elseif (isunix)
> +   homedir = tilde_expand ("~");
> +   ## On linux spreadsheet .jars are often found somewhere in /usr/share/java
> +   libdir = "/usr/share";
> + else
> +   ## Set libdir to "." to avoid searching in a root dir
> +   libdir = ".";
> + endif;
> + homedir = getenv ("USERPROFILE");
> + ## (MinGW) assume jar files are in /lib/java
> + libdir = octave_config_info ("libdir");
> + ## Find LibreOffice or OpenOffice.org
> + ooopath = '';
> + ii = 0;
> + ## Possible locations for  OOo or LO.
> + bnam = {"C:/Program Files (X86)", "C:/Program Files", 
> "C:/Programs", "/opt", "
> /usr/lib"};
> + if (strcmpi (octave_config_info ("USE_64_BIT_IDX_T"), 
> "yes"))
> +   ## 64-bit Octave won't work with 32-bit LibreOffice/OpenOffice.org
> +   bnam (1) = [];
> + endif;
> + while (isempty (ooopath) && ii < numel (bnam))
> +   ooopath = glob ([bnam{++ii}, filesep, "[Ll]ibre[Oo]ffice*"]);
> + endwhile;
> + ooopath = glob ([bnam{++ii}, filesep, "[Ll]ibre[Oo]ffice*"]);
> + while (isempty (ooopath) && ii < numel (bnam))
> +   ooopath = glob ([bnam{++ii}, filesep, "[Oo]pen[Oo]ffice.org*"]);
> + endwhile;
> + while (isempty (ooopath) && ii < numel (bnam))
> +   ooopath = glob ([bnam{++ii}, filesep, "ooo*"]);
> + endwhile;
> + if (!isempty (ooopath))
> +   ooopath = ooopath {:};
> + else
> +   ooopath = '';
> + endif;
> + ooopath = ooopath {:};
> + ## One big try-catch to circumvent possible problems on Linux
> + try
> +   if (!isempty (userdir))
> +     if (strcmpi (userdir, "no") || strcmpi (userdir, 
> "false") || strcmpi (user
> dir, "0"))
> +       ## Do not load Java class libs .jar files). First clean up, then 
> return
> +       clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath',
> 'ii');
> +       return;
> +     endif;
> +     ## First allow some time for io package to be fully loaded
> +     pause (0.25);
> +     ## Check first for user-, then system supplied jars
> +     if (exist (userdir) == 7)
> +       ## Userdir is a subdir
> +       spr_status = chk_spreadsheet_support (userdir, 0, ooopath);
> +     endif;
> +     ## Also try user's home directory
> +   elseif (isunix && !(strcmpi (userdir, "no") || strcmpi 
> (userdir, "false") ||
>  strcmpi (userdir, "0")))
> +     ## On non-Windows systems, automatic loading of Java classes is opt-in 
> due
>  to
> +     ## excessive search time (see bug #42044). Most of the delay is due to 
> sea
> rching
> +     ## for the Libre/OpenOffice.org jars
> +     clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath', 'i
> i');
> +     return;
> +   else
> +     ## Allow some time for io package to be fully loaded
> +     pause (0.25);
> +   endif;
> +   ## Try <HOME>/java
> +   spr_status = chk_spreadsheet_support ([homedir, filesep, "java"], 
> 0, ooopath
> );
> +   ## Only then search for system-supplied jars. ooopath has been searched
> +   spr_status = chk_spreadsheet_support ([libdir, filesep, "java"], 
> 0);
> + catch
> +   warning ("(Automatic loading of spreadsheet I/O Java classlibs 
> failed)\n");
> + end_try_catch;
> + if (!isempty (userdir))
> +   if (strcmpi (userdir, "no") || strcmpi (userdir, 
> "false") || strcmpi (userdi
> r, "0"))
> +     ## Do not load Java class libs .jar files). First clean up, then return
> +     clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath', 'i
> i');
> +     return;
> +   endif;
> +   ## First allow some time for io package to be fully loaded
> +   pause (0.25);
> +   ## Check first for user-, then system supplied jars
> +   if (exist (userdir) == 7)
> +     ## Userdir is a subdir
> +     spr_status = chk_spreadsheet_support (userdir, 0, ooopath);
> +   endif;
> +   ## Also try user's home directory
> + elseif (isunix && !(strcmpi (userdir, "no") || strcmpi 
> (userdir, "false") || s
> trcmpi (userdir, "0")))
> +   ## On non-Windows systems, automatic loading of Java classes is opt-in 
> due t
> o
> +   ## excessive search time (see bug #42044). Most of the delay is due to 
> searc
> hing
> +   ## for the Libre/OpenOffice.org jars
> +   clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath', 'ii'
> );
> +   return;
> + else
> +   ## Allow some time for io package to be fully loaded
> +   pause (0.25);
> + endif;
> + ## Allow some time for io package to be fully loaded
> + pause (0.25);
> + ## Try <HOME>/java
> + spr_status = chk_spreadsheet_support ([homedir, filesep, "java"], 0, 
> ooopath);
> 
> + ## Only then search for system-supplied jars. ooopath has been searched
> + spr_status = chk_spreadsheet_support ([libdir, filesep, "java"], 0);
> + ## Clean up
> + clear ('libdir', 'spr_status', 'userdir', 
> 'homedir', 'bnam', 'ooopath', 'ii');
> 
> + endscript;
> + ## PKG_DEL
> + ##
> + ## All we need to do is try to remove all Java spreadsheet class libs loaded
> + ## by chk_spreadsheet_support.m from the javaclasspath
> + try
> +   chk_spreadsheet_support ("", -1);
> + catch
> +   warning ("Couldn't remove spreadsheet I/O javaclasspath entries 
> while unload
> ing io pkg");
> + end_try_catch;
> + chk_spreadsheet_support ("", -1);
> + endscript;
> For information about changes from previous versions of the io package, run 
> 'new
> s io'.
> 
> 
> Regards
> 
> Tatsuro
> 

octave:20> A=[(0:10)' (0:2:20)']
A =

    0    0
    1    2
    2    4
    3    6
    4    8
    5   10
    6   12
    7   14
    8   16
    9   18
   10   20

octave:21> xlswrite('test.xlsx', A)
ans =  1

See attachment file : Excel2010_A.png

Tatsuro

Attachment: Excel2010_A.png
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]