如何获取最新的 JRE / JDK 作为 zip 文件而不是 EXE 或 MSI 安装程序? [关闭]
Posted
技术标签:
【中文标题】如何获取最新的 JRE / JDK 作为 zip 文件而不是 EXE 或 MSI 安装程序? [关闭]【英文标题】:How can I get the latest JRE / JDK as a zip file rather than EXE or MSI installer? [closed] 【发布时间】:2010-12-09 19:58:04 【问题描述】:我希望通过复制 Java 文件夹的内容并设置环境变量来确保一切正常。
我通常在虚拟机中运行安装程序,压缩 \java 文件夹内容,返回虚拟机快照,然后解压缩压缩文件。
我找不到以 zip 文件形式提供最新 JRE / JDK 的地方...
http://java.sun.com/javase/downloads/index.jsp
http://download.java.net/jdk6/
或者,是否可以安全地假设来自 sun 的 exe 安装程序只会解压缩整个文件,而不会弄乱注册表、环境变量等...?
相关:Installing Java manually on Windows?
-- 经过这么长时间,我找到了this 网站,这似乎正是我想要的 (2018-05-22)
【问题讨论】:
Java 安装程序将(或至少应该)设置 JAVA_HOME。可能它也会做其他事情,因为 Java 可能不会自己找到进入 Windows 控制面板的方式。据我所知,Sun 没有提供 ZIP。虽然我从来没有试图找到一个。 "...但我想确保只需复制 java 文件夹的内容并设置环境变量,一切都会正常工作。"。为什么? public jre 乱用windows文件夹,在默认路径下提供一个java.exe。 支持这个问题:我必须手动安装 JRE,以避免我的公司倾向于通过远程安装“修复”来破坏它。目前我安装它,复制它然后卸载它以隐藏它 - 似乎有点烦人,但它现在的方式破坏了我们的整个开发设置与每个补丁。 @Carlos 我无法告诉您我必须在安装 Java 的所有不同计算机上手动设置 JAVA_HOME 多少次。当我格式化我的电脑时,它总是让我很痛苦,因为 Maven 要求它被设置并强迫我修复它。我不知道为什么它无法为我设置但对其他人有效(因为我在 Windows XP、7 和 8 上遇到过这个问题)。我一直认为安装程序应该为我做这件事,但最终因为沮丧而自己做。 【参考方案1】:您可以从PortableApps.com 下载 Java Portable。它不会更改您的系统设置。你可以把它放在你的 U 盘上。
UPD:对于那些需要 JDK 的人,有一个开源项目 OpenJDK Portable
UPD2:还有一个JDK Portable(Oracle)
有些人可能对官方Oracle感兴趣production-ready open source build of JDK
【讨论】:
这很好,但它只是一个 JRE,而不是一个 JDK。 @Vivien,如果 OpenJDK 适合你,那么有 OpenJDK Portable 项目 - sourceforge.net/projects/openjdkportable 对于 Windows OpenJDK Portable 请参阅***.com/questions/5991508/… 如果是Oracle提供的就更好了。 更新:PortableApps now offers a portable version of the Java JDK.【参考方案2】:对于 JDK 8u102,情况发生了变化,这对我有用:
-
下载windows JDK exe
使用 7-Zip 打开
将内容转储到目录 %JDK-EXE%
cmd: cd %JDK-EXE%.rsrc\1033\JAVA_CAB10
cmd:extract32 111
现在目录中有一个 tools.zip,用 7-Zip 打开它
将内容解压到新目录 %JDK-VERSION%
cmd: cd %JDK-VERSION%
cmd: for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
src.zip 位于 %JDK-EXE%.rsrc\1033\JAVA_CAB9\110\ - 将副本放入 %JDK-VERSION%
现在你准备好了。 您可能希望设置 JAVA_HOME 和 PATH 以指向您的 %JDK-VERSION% 目录及其 BIN 子目录。
【讨论】:
如果上面的太像辛苦了,你也可以试试portableapps.com/apps/utilities/jdkportable 这家伙需要一枚奖牌来制作这个便携包 我做了一个小工具来自动化上述过程:github.com/kbridge/jix【参考方案3】:JDK 可以从这里下载为 zip 文件或 .exe http://installbuilder.bitrock.com/java/
【讨论】:
【参考方案4】:在沙盒中安装,然后复制文件夹。
【讨论】:
【参考方案5】:广受好评的答案很好,我已经以这个 bat 文件的形式使用了很长时间:
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET ROOT=%cd%
REM Get the tools.zip from the innards of the installer
7z e *.exe .rsrc/1033/JAVA_CAB10/111
7z e 111 7z x tools.zip
REM Extract all
7z x -aoa tools.zip -ojdk
del tools.zip
del 111
REM Searching directory structure from root for subfolders and zipfiles.
FOR /F "delims==" %%d IN ('dir /ogne /ad /b /s "%ROOT%"') DO (
echo Descending into %%d
FOR /F "delims==" %%f IN ('dir /b "%%d\*.pack"') DO (
echo Extracting "%%d\%%f"
REM Extract all packs into jars.
jdk\bin\unpack200 -r "%%d\%%f" "%%d\%%~nf.jar"
)
)
ENDLOCAL
pause;
它需要访问 7zip 的路径,并且必须在您选择的 JDK 旁边的文件夹中运行(它会因为这里的 *.exe 而找到它)。
适用于 8u144,我猜它适用于 8u20。
【讨论】:
如果你也想要源存档,你可以添加7z e *.exe .rsrc/1033/JAVA_CAB9/110
和7z e 110 7z x src.zip
你是我的英雄!希望我能多次投票。我的意思是,所有其他答案都很好,但这是一键复制和粘贴解决方案:-)
在 8u201 上运行良好。谢谢!【参考方案6】:
遗憾的是,JDK 不能作为可移植的 ZIP 文件使用。但是,您可以按照以下步骤操作:
创建工作 JDK 目录(在本例中为C:\JDK
)
Download Oracle 最新版本的 JDK(例如 jdk-7u7-windows-x64.exe
)
Download 并安装 7-Zip(如果您不是管理员,请下载 7-Zip portable 版本)
使用 7-Zip 将 jdk-XuXX-windows-x64.exe
中的所有文件解压缩到目录 C:\JDK
在cmd.exe
中执行以下命令:
cd C:\JDK\.rsrc\1033\JAVA_CAB10
extrac32 111
用 7-zip 解压 C:\JDK\.rsrc\1033\JAVA_CAB10\tools.zip
在cmd.exe
中执行以下命令:
cd C:\JDK\.rsrc\1033\JAVA_CAB10\tools\
for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
(这会将所有 .pack
文件转换为 .jar
文件)
将C:\JDK\.rsrc\1033\JAVA_CAB10\tools
的所有内容复制到您希望JDK所在的位置
手动设置 JAVA_HOME
和 PATH
以指向您的 JDK 目录及其 BIN 子目录。
【讨论】:
如果你想自动化它,一旦你安装了 7-zip,你就可以使用与它一起安装的 7z.exe 实用程序来完成所有的提取(它也替换了这个解决方案中的 extrac32) .例如:7z e jdk-7u15-windows-x64.exe .rsrc/JAVA_CAB10/111
7z e 111
7z x -ojdk_dir tools.zip
然后删除临时 111 和 tools.zip 文件并进行解包。 msys/cygwin下的解包可以通过:find jdk_dir -name "*.pack" -exec sh -c 'jdk_dir/bin/unpack200 -r "" "$(dirname "")/$(basename "" .pack).jar"' \;
.
如果您想要 src.zip,那么您还应该在 .rsrc/JAVA_CAB9 中“extrac32 110”,并将其复制到生成的 JDK 目录的根目录。
似乎从 JDK 7u40 开始,exe 文件中直接包含 tools.zip,因此您应该跳过 cab (111) 步骤,直接从 exe 中提取 tools.zip 并从在那里。
我没有 .rsrc 文件夹,所以我所做的是在 C:\JDK 文件夹本身上运行 unpack200 步骤,这很有效。 (JDK 8u65)
@AlixLourme 对于 jdk-6u45-windows-x64 也是如此,文件在 .rsrc\1033\JAVA_CAB10
【参考方案7】:
mkdir c:\JDK
cd c:\JDK
git clone https://bitbucket.org/ramazanpolat/jdk-8u112-windows-x64/
或
git clone https://bitbucket.org/ramazanpolat/jdk-8u112-windows-x86
【讨论】:
【参考方案8】:我就是这么干的,
从exe安装开始,等待下面的屏幕,
转到C:\Program Files (x86)\Java
并将您的JDK 复制到另一个地方。
单击“x”取消安装并卸载 JDK。
将复制的 JDK 复制回 C:\Program Files (x86)\Java
或您选择的其他文件夹
【讨论】:
不知何故人们错过了这个宝石。它有效! 自我注意:即使在取消安装后,我也必须使用控制面板删除/卸载它 |程序和特点。此解决方案应该在列表中较高,它快速、简单且有效。 当您没有机器管理员权限时无用 我就是这么做的。安装、复制、卸载。我不希望 Java 与我的浏览器交互!愚蠢的是,我们必须跳过这些箍。而且还总是需要手动设置JAVA_HOME。【参考方案9】:之前已经给出了答案。它也适用于“jdk-8u91-windows-x64.exe”
-
用 7-zip 解压,得到 tools.zip
解压 tools.zip 到一个文件夹folder_name 这样我们就可以得到图片中的内容了
在 cmd 中移动到文件夹 folder_name/bin 并运行命令
java-版本
输出将是
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
这表明有什么东西搞砸了。其实我们需要解压所有的包。
在 cmd 中移动到文件夹 folder_name 并通过执行命令自动解包
对于 (*.pack) 中的 /r %x 执行 .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
再次执行第 3 步,如果得到以下输出,则 JDK 可以使用了。
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)
【讨论】:
太棒了。你让我今天一整天都感觉很好。像魅力一样工作。这是 OP 问题的准确答案。非常感谢您的详细说明:) 这对我帮助很大——我只是按照这些步骤获得了一个“便携式”JRE 6u45 64 位来测试旧的东西。 :) 谢谢伙计。它也适用于“jdk-8u102-windows-i586.exe”。【参考方案10】:以下提示中的命令包装为批处理脚本。将此保存为 unpack.bat。然后把它放到带有 jdk/jre 提取文件的目录中。
@echo off
cd /d "%~dp0"
for /r %%x in (*.pack) do .\bin\unpack200 -r "%%x" "%%~dx%%~px%%~nx.jar"
【讨论】:
【参考方案11】:您可以下载包含 jdk 的 SEVER JRE。 server jre 7
-
windows系统下载server-jre-
tar xzvf file.tar.gz
解压 tar 文件,任何其他 tar 提取器也可以工作
现在提取的 JDK 文件夹将在同一文件夹中创建。
【讨论】:
也适用于 jdk8。你让我今天一整天都感觉很好。这是迄今为止最简单的方法。【参考方案12】:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
这里是。下载 .gz 包。
【讨论】:
你能再解释一下吗? OP 专门询问如何下载 .zip,但该解决方案特别建议下载 .gz(略有不同),在本机(仅内置实用程序)Windows 机器上无法提取.【参考方案13】:OSX 说明
用jdk-8u74-macosx-x64.dmg
测试。
-
从 Oracle 下载
.dmg
装载磁盘映像
提取 .pkg
,拖动它。不要双击(它会安装)。
打开终端并将cd
放入包中。
mkdir jdk-$version && cd jdk-$version
xar -xf ../JDK*.pkg
cd jdk
TAB
tar zxf Payload
Contents/Home
文件夹包含 JDK
【讨论】:
这确实是mac的最佳解决方案!请注意,要从 Finder 访问文件夹Contents/Home
,请重命名 jdk TAB
文件(从步骤 7 开始)以删除 .pkg
扩展名并使其成为 Finder 可访问文件夹【参考方案14】:
创建可以 RWX 的目标文件夹(例如 C:\jdk8
)
从 Oracle 下载 jdk exe(例如jdk-8u72-windows-x64.exe
)
将其中的tools.zip
解压到目标文件夹中
在cmd.exe
中,运行:
cd C:\jdk8
for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
此解决方案也适用于 JDK 8,无需管理员权限。
【讨论】:
它适用于 jdk-8u31-windows-x64 上的 Windows 7 上的 64 位版本。 这个答案让我可以解压 JDK 8 @MarcT running java -version 仍然指向旧的 jdk。如何upate java指向新的jdk? 似乎 7-Zip 解压缩 JRE_xxx.exe 文件会创建 installerexe 文件,再次将其解压缩到同一文件夹。 JDK_xxx.exe 文件创建 tools.zip 以再次解压缩。 显然 Oracle 用最新的 JDK8 更新(111、112)改变了包装,这个技巧不再起作用了:-(【参考方案15】:试试这个: http://maven.nuiton.org/nexus/content/repositories/jvm/com/oracle/jre/
此链接包含所有版本的便携式 zip 分发。
【讨论】:
好像只有jre?【参考方案16】:您可以 download 来自 Azul Systems 的便携式 Zulu .zip 存档,它是适用于 Windows、Linux(RHEL、SUSE、Debian、Ubuntu、CentOS)和 Mac OS X 的 OpenJDK 构建。
Zulu 是经过认证的 OpenJDK 版本,完全符合 Java SE 标准。 Zulu 是 100% 开源且可免费下载的。现在,Java 开发人员、系统管理员和最终用户可以享受开源 Java 的全部优势,包括部署灵活性和升级时间控制。
更多关于不同 JVM(包括 Zulu)及其架构和操作系统支持的技术信息here。
【讨论】:
这有适用于 Mac 以及 Windows 和 Linux 的 zip 文件。非常好!【参考方案17】:http://androidhost.org/D8wsv
您可以从上面的链接中获取 jre-7u75-windows-i586.zip。
【讨论】:
【参考方案18】:Oracle 网站上有一个 Java Runtime Environment (JRE) 的 .tar.gz 文件,适用于以下操作系统:Windows x86、Windows x64、Linux x86、Linux x64、Mac OS X x64,Solaris x64。 见:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
还有 Java 开发工具包 (JDK):http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html。 Windows .tar.gz。缺少,但您可以使用 7zip 之类的工具提取 .exe 文件。
我发现这对于使 Eclipse 可移植非常有用。 ;-)
【讨论】:
OSX 也缺少 JDK .tar.gz。 解压缩 Windows .exe 不会为您提供所需格式的文件(至少从 8u181 开始不会)。其他答案提供了有关如何进一步提取内容的详细步骤。【参考方案19】:我使用 exe 安装程序安装了 JDK 8,然后卸载了 JRE,我现在有没有 env 变量或其他设置更改的 JDK 文件夹。
【讨论】:
【参考方案20】:使用 JDK 下载 JAVA SE
-
从 Oracle 网站下载 jdk:http://www.oracle.com/technetwork/java/javase/downloads/index.html
解压 exe。例如:jdk-8u5-windows-x64.exe
解压缩以下文件:tools.zip(位于解压缩文件夹下)到所需的 JAVA_HOME。
更新 JAVA_HOME 环境变量以指向您想要的路径。
测试版本:jdk-7u60-windows-x64.exe、jdk-7u60-windows-x64.exe
使用 JDK 下载 JAVA EE
-
从 Oracle 网站下载 jdk:http://www.oracle.com/technetwork/java/javaee/downloads/index.html
解压 exe。例如:jdk-7u55-windows-x64.exe
解压缩以下文件:Product\Packages\jdk.zip(位于解压缩文件夹下)到所需的 JAVA_HOME。
更新 JAVA_HOME 环境变量以指向您想要的路径。
测试版本:jdk-7u55-windows-x64.exe
【讨论】:
使用 jdk-7u60,在我用 7zip 解压(第 2 步)后,我只得到 tools.zip,没有从 exe 中提取其他文件... :( 实际上对我来说 jdk-7u55 也是如此,对于 x64 和 x32... 您正在尝试下载 Java SE 开发工具包,而不是 Java EE 开发工具包。对于 Java SE JDK,只需将 tools.zip 文件解压缩到 JAVA_HOME 文件夹即可。请参阅上面的更新说明。 我提取了 tools.zip 并设置了 JAVA_HOME。在运行javac
时收到“java/lang/NoClassDefFoundError: java/lang/Object”之后。
@arulraj.net 我所做的是按照 Igor 指南(向上滚动)解压缩后在 jdk 文件夹中执行以下命令,因为他指定了 for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
【参考方案21】:
这是一个很好但有点复杂的方法:
第 1 阶段:来自本机安装文件的 MSI 和 CAB
从 Oracle (Sun) 网站下载 JRE 或 JDK。此方法适用于任何版本以及 SDK 或 JRE。
运行并等待安装程序加载。最小化窗口。
在 Windows 7 中,您应该浏览到此位置:
C:\Users\ YOUR_USER_NAME \AppData\LocalLow\Sun\Java
在那里,您将拥有一些 MSI 和 CAB 文件。
第 2 阶段:使用 uniextract 轻松提取 MSI 和 CAB
浏览到Universal Extractor | LegRoom.net并下载UniExtract Binary Archive。
使用 WinRar 或任何可用的非 RAR 程序,并在任何地方解压 uniextract161_noinst.rar。
第 3 阶段:最后,提取名为 core.zip 的内部容器
将 jdk1.6.0_31.msi 或 jre1.6.0_31.msi 拖放到 UniExtract.exe 的图标上.
选择“提取方法:MSI 管理安装程序”。等待该过程完成。
输入新创建的文件夹。
如果您已拖放 jre1.6.0_31.msi,您应该有一个 jre1.6.0_31 文件夹 p>
按照里面的所有级别,你会看到 core.zip。
这就是你所追求的。您可以在任何地方解压它,您将拥有 Java 运行时或 SDK 的内容,而无需在系统上安装任何东西。
* 您现在可以关闭在阶段 1 中打开的 Java 安装程序 *
【讨论】:
这似乎对我不起作用我试图在 windows 7 下获得 6.45x64 的 Java 我得到一个内部错误 2203 有什么想法吗? 我认为我的问题与它是一个在线安装程序有关。我找到了一个较旧的 (x86) 版本,它是一个离线安装程序,它似乎给了我 core.zip 似乎仍然无法让它在 JDK 上运行... @Jackie 您应该使用完整(也称为“离线”)版本。 对我来说 core.zip 似乎是 tools.zip For JDK 8【参考方案22】:从http://www.processing.org/download/ 下载处理应用程序。 zip 文件包含一个名为 java 的文件夹。它包括 JDK 1.6.0_32(2013 年 2 月 19 日检查的版本)。
【讨论】:
截至今天,32 位 windows 版本包含 JRE1.7.0_40
。
如何将处理java文件夹添加到eclipse中?
@mrsquad 在 Window -> Preferences 菜单(或 Eclipse -> Mac 上的 Preferences 菜单)中打开 Preferences 对话框,转到 Java -> Installed JREs,然后单击 Add。
检查:2015-11-30,版本:1.8.0_51
这是 jre,不是 jdk?【参考方案23】:
我发现你可以在 Wine 中运行安装程序。这有效:
WINEPREFIX=/home/jason/java wine jre-7u11-windows-i586.exe
完成后,您可以将/home/jason/java/drive_c/Program\ Files\ \(x86\)/Java/jre7/
拉上拉链
这也适用于 jdk
【讨论】:
【参考方案24】:这个链接
http://www.java.com/en/download/manual.jsp
至少可以帮助您避免令人讨厌的预加载安装程序直接进入 SDK。
从那里,我会将它安装在一个废弃的虚拟机中,在你的旧 PC 或其他地方,然后转移结果
C:\Program Files (x86)\Java\jre7
(或类似)到您的新机器,设置非常少的常用 ENV 变量,然后您就可以理想地使用,没有所有营销垃圾和潜在的搭配。当然,也没有频繁自动更新带来的安全性。
【讨论】:
同样没有浏览器插件,所以小程序和 javafx 无法工作,webstart 不可用,jar 类型未绑定到 javaw.exe 并且根本没有安装“默认 java”。但是,如果您不需要任何这些,当然就可以了。 是的,我完全同意 :-) 这就是 OP“无安装程序”所要求的。当然,有人(当然不是来自 sun-oracle)可以分析在常规安装期间注册表发生的情况,并在接受或放弃的基础上提供许多 .reg(istry) 文件。众所周知,许多浏览器禁用了任何和所有 java 插件。有充分的理由。我很高兴,他们做到了。【参考方案25】:这里是 JDK 5 zip 文件的链接。 sun-jdk-5-win32-x86-1.5.0.12.zip
【讨论】:
为我节省了一天,非常感谢!旁注:sourceforge.jp 有一个严重的贫民窟下载页面。【参考方案26】:您可以只使用 7zip(或其他类似的应用程序)来获取捆绑在安装程序中的 core.zip 文件中的目录。 只需使用 7zip 浏览 exe,您将看到一个 core.zip 文件,其中包含通常位于“jreX”目录中的所有文件(其中 X 是主要版本号)。 至于设置环境变量等,您可以遵循其他答案。如果您想要的只是一个可移植的 jre(例如,您可以使用 java.exe jarfile 或 javaw.exe jarfile 运行您的 jars),那么这个解决方案就可以了。 这与将 jre 目录从一个地方复制到另一个地方非常相似
【讨论】:
无济于事...VM java/lang/NoClassDefFoundError: java/lang/Object 初始化期间发生错误【参考方案27】:Igor 和 CharlesB 描述的过程对我有用,因为像 NetBeans 和 Eclipse 这样的 IDE 允许指定 JDK 的位置,甚至像 Apache Tomcat(ZIP 发行版)这样的软件也使用 BASH - FILES 来设置它(然后指定JDK 位置使用亲戚 URI)。 我有一个带有 NetBeans、Eclipse、Apache Tomcat 的 USB 硬盘,它在“便携模式”下与 JDK 一起工作。 我有一种方法可以从安装程序文件中提取 JDK 的副本:安装它,将其复制到其他位置,然后将其卸载。提取它的一种肮脏方法,但成功了。 放置 EXTRA - LIBS 的位置是:%PLACE_WHERE_JDK_ARE%\jre\lib\ext
【讨论】:
【参考方案28】:Sun JVM 可作为 MSI 提供,可通过脚本执行。
http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment-guide/install-msi.html
【讨论】:
离我要找的东西又近了一步...... 切换到 Ubuntu。 "sudo apt-get sun-java6-sdk" ...(第一次你必须接受许可证)。 我已经切换到 ubuntu,即使在那里,我也宁愿从 oracle 下载和解压缩而不是发出 apt-get,只需一个符号链接我就可以并排安装许多 JDK... 您无法轻松获得“下载解压运行”功能,因为您需要接受许可。然而,我发现 Jenkins 可以自动下载 Java 并使其可供自己使用。也许您可以自己提升该功能? 这不再有效。下载链接已被撤下。【参考方案29】:我确实复制了 JRE 文件夹几次,它总是可以正常工作。但我真的不确定你是否可以只获得一个包含其内容的 zip 文件,因为官方安装会安装 IE、Firefox 等插件。
【讨论】:
好吧,我有一个 zip 文件上传到 Dropbox,我下载它并复制到每台机器上......到目前为止它运行良好......【参考方案30】:感谢您的提问; JDK 似乎不与 Windows 注册表交互。
但是,JRE 在某些情况下会这样做。
链接:http://www.rgagnon.com/javadetails/java-0604.html
【讨论】:
现在确实如此。由于注册表配置被破坏,我无法重新安装 jdk6,并且它坚持重新安装永远不会工作 嗯,这就是我要避免的事情......以上是关于如何获取最新的 JRE / JDK 作为 zip 文件而不是 EXE 或 MSI 安装程序? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
macbook pro osx系统电脑打不开jar文件,java安装为最新版,jdk,jre都安装了,还是不行