设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10279|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % I7 T% I( q+ N( g
6 P, W( B  [& d# {7 q" }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" O. k+ N7 y7 y$ r& q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ I/ B7 N7 }8 F! @1 C/ [" i1 W) P
swarm.SignatureNotFoundException. O" \1 V  h3 u; v0 x" U. T! V3 m
        at swarm.Selector.<init>(Selector.java:76)! B' g- B! G3 j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ c0 b' P) K  p/ d0 W        at ActionGroupDemo.main(ActionGroupDemo.java:67)% \' D7 y8 s( O0 ]# W) v/ \6 `& U
+ R, x3 I' [5 r+ o# S9 x. K' }5 V
: {* O9 U! k! M8 H
import swarm.objectbase.SwarmImpl;
4 ~4 G$ B! J2 G$ O; Timport swarm.objectbase.Swarm;8 [* ~4 g$ _% Y9 R8 Y8 x) @
import swarm.activity.ScheduleImpl;2 b8 X! G; a: h% J! p
import swarm.activity.Activity;
; V$ q7 t/ T9 }& S" T5 ]0 Simport swarm.activity.ActionGroupImpl;
& J3 K, ~# M$ S# t$ F8 Kimport swarm.collections.ListImpl;
5 h% d: z2 s% J6 r' ^import swarm.defobj.Zone;
% s* @: k9 `1 {  s! t* Rimport swarm.Globals;' n! C/ e9 ~+ v5 l
import swarm.Selector;
0 J  f  N0 N  g; q. L1 i2 z/ ximport swarm.activity.ActionGroup;
! o$ A) T1 F9 c. j% Xclass Agent {1 A0 I  E* q- [
        char id;
9 N, L' S5 Y4 t5 i" f* A6 n0 e- D* [8 Y1 A* |/ Z
        Agent(char id) {( p; \) M& d/ _* e( M. e  J5 E
                this.id = id;
% W! v7 P6 H; t' r) ^        }
6 _. `1 ~  J; ^2 c3 S% }7 m' J0 K: C/ Y
        public void agentStep() {6 d9 b1 A' J6 N8 r8 h
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; _# b9 a% ^" p9 O( q! e        }
' f7 D5 S; x0 ?( l8 c2 f}
3 M8 B1 g: U8 ~* z! D5 l% w4 p8 F( h% c, ^) _. [; h
public class ActionGroupDemo extends SwarmImpl {8 x# s- I' j) ]& o
        ScheduleImpl schedule;) G  h1 ?9 d; e
        ActionGroupImpl actionGroup;- s9 d4 a5 ^7 G, u. m
        ListImpl list;
0 s9 E8 D% u9 Z6 e        char Id = 'a';/ ]0 a/ {0 u& p7 X; G

& U4 K+ ?6 G4 r; K; a        ActionGroupDemo(Zone aZone) {
& {6 W8 s3 C" K) }2 v                super(aZone);" j" X$ a) y$ \) G
                list = new ListImpl(aZone);
3 A% H4 F! Q, l8 R; R& ~' O                swarmSetp();
4 C" u1 ]! c2 X                actionGroup = new ActionGroupImpl(aZone);
( ~$ W$ d4 |( |* h# r& p                schedule = new ScheduleImpl(aZone);, o0 ?) o% f0 a' B
                try {
; B2 J  r+ ~% g" T( O3 w) }0 b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 @( g/ x% f' g8 C6 K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. ^9 e( A; t" T7 r+ m# y$ l9 M                        
4 t7 J) x6 ?3 O7 r                        actionGroup.createActionForEach$message(list, agentSel);
* W4 }  ~4 q8 \' N/ n: e& A                        actionGroup.createActionTo$message(this, swarmSel);
: j. ]) H  ^5 f                        schedule.at$createAction(0, actionGroup);* B" T  q8 w% s. r% M
                        schedule.at$createAction(1, actionGroup);$ p2 R% a1 W, h. u: l6 U3 C
                        schedule.at$createAction(2, actionGroup);" b  Q" [+ T; `) V7 e% M

3 p9 `. r) Y% _8 z* A2 N% U                } catch (Exception e) {
" N! k$ [/ P" H, F& d# e1 v5 ~                        e.printStackTrace(System.err);0 J$ `2 j+ ?" G- \; b+ Z: ]. s0 B; B. j
                        //System.out.println(e);
7 [2 G5 a6 w) Y2 w                        System.exit(1);
/ I; O) O' y0 D" K: Q8 D  C8 ]8 F                }
& d- p3 W5 X  r6 r: \' D/ X, [  i0 K' ^9 L) y" Z

4 Z2 s: A0 _1 @8 R        }$ r# ?4 c4 M2 T0 W9 Z8 Y/ Y
/ i: O- u3 n, h1 {# ^
        private void swarmSetp() {
7 ~5 s6 N, B* q  V                list.addLast(new Agent(Id));" t, ^- s* s5 }" E& T  i* S
                Id++;7 O1 T+ Q/ f4 z2 l( _3 D2 U
        }
  d3 u% v  r- k/ w. z
- X3 A8 s  ^! s. b. {$ b% U9 {; y1 a3 ~        public Activity activateIn(Swarm context) {
7 k' ~6 M8 Z4 ~3 b- u. f1 N  L# S                super.activateIn(context);
7 `& A9 J* b6 ]. P  b# L/ n                schedule.activateIn(this);1 s  T% h! r* ~$ e4 j; H
                return getActivity();' S1 b4 l* w! K+ Y8 t2 l
        }& z1 G4 r' K, \: q$ k3 S! H
0 }8 V* _1 @% W, a0 j
        public static void main(String[] args) {2 L% ~5 I! O6 b  e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ O/ b7 a: p9 r0 I! a2 q' A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- g0 W; Q( n4 J0 I! p# z' p
                swarms.buildObjects();
' g3 P, }, v1 {                swarms.buildActions();
! J8 b( w+ r6 r5 X2 i# N9 c# S, k                swarms.activateIn(null).run();
! A$ n. h1 B9 n' ^5 U        }0 K3 @$ f5 E8 `* Y# V0 }1 N

  \1 W, \2 Q: Q3 j5 M) P5 f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-9 11:07 , Processed in 0.014974 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表