设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8984|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! z0 \6 {- M6 n$ N" \/ b% ~0 R) m7 T9 c9 w# z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- }. i9 J: I9 O+ A: P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. k& u& @9 \+ u6 ], s# ?* U1 A
swarm.SignatureNotFoundException* u' ]$ A) A/ U0 }9 G3 `0 U
        at swarm.Selector.<init>(Selector.java:76)
3 r( W5 \9 S4 D7 T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- ^  m% Z* ]# A1 H+ J$ `7 P6 d! @        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 @8 r9 y2 Z& n# Y  N& v8 A
3 }4 m9 ^5 P5 k7 }* i, I7 x/ k( }# e% w
import swarm.objectbase.SwarmImpl;
* L& u5 G- m4 S0 O: Gimport swarm.objectbase.Swarm;# E5 I. V/ z# b4 l
import swarm.activity.ScheduleImpl;
' M, b& Z! z# p+ Y+ d" e! f6 Bimport swarm.activity.Activity;
  V; z9 m% g. o; {" u: D! }/ timport swarm.activity.ActionGroupImpl;0 c# v3 Y2 b. y, C+ d+ S$ `
import swarm.collections.ListImpl;( Y6 a  y' u/ ]
import swarm.defobj.Zone; 5 i; w1 m$ M' H
import swarm.Globals;1 u0 u, M( e; B9 z3 Y3 k4 o
import swarm.Selector;" W0 S/ H1 g  ?# l- u6 c; H* x
import swarm.activity.ActionGroup; ) x2 m+ f, W! ^* n8 Z
class Agent {. I0 _* H% F) R* Q2 R
        char id;
$ n: N" l" C: h7 N9 t2 t" }* [, \: Q) I+ T+ `! `
        Agent(char id) {
6 T; v6 {" b* {6 e4 c                this.id = id;
! C" c, [* H, {. `        }6 w7 |; J* S0 x& o5 x1 J
& B1 v* R3 r; }
        public void agentStep() {
& D5 {& |% i% S2 M                System.out.println(id + ":" + Globals.env.getCurrentTime());5 Q2 t. P' ]% u' L/ a0 U6 h
        }
& }" R3 N% L1 u! i$ {, g}
1 y1 W7 }0 S3 P- h- r( t: X" L; k5 ]8 w' J* k+ b7 G( q
public class ActionGroupDemo extends SwarmImpl {
# V4 ^$ S: t/ ]& x7 W0 B8 m        ScheduleImpl schedule;( G0 T0 j8 J+ g/ ]6 a0 Z
        ActionGroupImpl actionGroup;
. J! v* e9 L; M        ListImpl list;, l# V$ v: n2 D& T
        char Id = 'a';/ m- _: O4 }1 S+ _

/ D/ Z0 g* N* b& ]        ActionGroupDemo(Zone aZone) {0 m, z) R, r0 N3 U! z! g6 Z( Q, M
                super(aZone);8 `" J% v4 [1 D7 y( t
                list = new ListImpl(aZone);
% J5 V  v% P, J% H                swarmSetp();
- B  `2 `  J0 Z1 ^4 P4 C; W                actionGroup = new ActionGroupImpl(aZone);: G$ ~; {% `3 f# B
                schedule = new ScheduleImpl(aZone);/ G6 n1 r3 f$ e3 h6 j/ x( i  P2 J+ _
                try {- ^2 z" U8 b) e
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& l- T. j; O/ p3 H  k3 y4 b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 q1 B) O8 |; c/ l                        . F+ Q8 |0 {2 X3 j: e  ]
                        actionGroup.createActionForEach$message(list, agentSel);
2 Z0 Y2 E) t0 i                        actionGroup.createActionTo$message(this, swarmSel);. B2 s2 u- Z* n9 k0 O& B
                        schedule.at$createAction(0, actionGroup);
$ d1 Z! @- s0 b6 r' U) D( T) s                        schedule.at$createAction(1, actionGroup);& o/ @! R8 Z% p2 ?
                        schedule.at$createAction(2, actionGroup);/ i- ^4 `+ U& L& L
% R: I3 Z; P- E% l
                } catch (Exception e) {6 _& O4 F% x  F+ n& Q; p$ D
                        e.printStackTrace(System.err);* f. P) O; p3 O% B) m% i
                        //System.out.println(e);% e% A  T1 e, ^
                        System.exit(1);: k% C8 l* a( z5 \
                }8 M: a% y* L' q) _+ v0 a5 f. f  i
: J1 I4 X) ^% O# V- t
$ T# x- w( y% I; I% ]
        }3 ]' R9 `/ E3 n. G1 H* m' @" l
3 ^4 o2 s1 B* X6 q2 s' b
        private void swarmSetp() {0 A+ `- o) n( n  a  e0 M
                list.addLast(new Agent(Id));
4 f: a5 C$ W9 m6 T! w/ b                Id++;
( m4 u1 \0 Y: F5 X/ ~9 l5 u        }, z/ l+ E: [0 z- H5 O7 a4 r( E

! v- j  W5 }- h) E) W2 y        public Activity activateIn(Swarm context) {
) V* f7 j6 U2 V- [9 V. Y                super.activateIn(context);$ l/ U, p+ t" V$ q1 G
                schedule.activateIn(this);$ e! W. Z! H( r6 A* r
                return getActivity();
7 G! R; ~! b8 n% \: N9 y' |        }
8 t" [; b7 g4 v: w- U4 c
) o" ^" q- R. _- {8 Q+ `2 s: o        public static void main(String[] args) {  \' ^6 k- t4 E8 M( [9 U& q$ R: e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ J) N' K+ @0 s( q( w3 h$ X$ c' `* V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% i) L# T* k. S
                swarms.buildObjects();8 k, D4 y. e" o
                swarms.buildActions();
; ~6 d+ k5 E  A8 e* s. I& {                swarms.activateIn(null).run();
6 }$ x8 w  R  W$ d0 Z' A        }
2 p8 z* o2 G5 u7 o, U5 w4 n9 s+ @7 p  [$ o* t) _( M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-28 14:29 , Processed in 0.015406 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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