设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13237|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + }8 [  a7 K4 R% I/ l  y  w* ]$ R

( @2 }8 E4 T: J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 U" r. }) B8 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' I0 `! D# A" r+ ^
swarm.SignatureNotFoundException1 G4 D: X; }5 b, m/ q, `
        at swarm.Selector.<init>(Selector.java:76)5 t# d& U5 ^. U" Q* Q5 E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 H6 f5 m3 l% y0 }: ~$ I& P0 @8 o) L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' u  e. g, ~: Z/ l9 T0 @

4 j0 P" R9 K1 E. w1 H! y
$ |9 Z  \+ y8 A2 `4 Gimport swarm.objectbase.SwarmImpl;/ M/ p, {' W  F" G! D- n
import swarm.objectbase.Swarm;: V1 C9 [- a8 C1 x. b
import swarm.activity.ScheduleImpl;
; b( C: w! u* U1 Uimport swarm.activity.Activity;
4 K6 S- A" V3 x$ fimport swarm.activity.ActionGroupImpl;9 J1 y- Z3 |+ L
import swarm.collections.ListImpl;) a# ~  }" I* S  T& N. o
import swarm.defobj.Zone;
4 Z! e2 Q. X; v  B2 Bimport swarm.Globals;
  M8 P# u+ A0 k' Uimport swarm.Selector;: `/ R3 f6 A; f
import swarm.activity.ActionGroup; ' v7 D' P1 Y5 z1 ~
class Agent {
4 d# b( z$ U- T; S        char id;
  V! t6 F/ Q  P, o1 z$ F5 f8 F! K/ A' y( x4 {% {2 L) \
        Agent(char id) {) g- x) T9 H1 f6 N( X; s
                this.id = id;. \3 V. F. B& F& J3 [, o- z
        }/ Q. ?; v. X% H% L1 w' s. L( s

  I$ L. I+ H# E: ^) a        public void agentStep() {
2 {. Q! J: Y; \; _: C  u7 V                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 q2 v2 L- @# e1 ~" {2 i0 o+ M        }2 R" J* s1 s* {6 V; ?4 t
}0 r: y' t& m) M, Y
1 G! x. x* ^3 n/ g4 g( h$ y$ f
public class ActionGroupDemo extends SwarmImpl {1 P+ `) a! Z- Q4 v
        ScheduleImpl schedule;9 l% E0 m# f; q
        ActionGroupImpl actionGroup;% N' C  l: {8 F/ N, W7 H) W% X& S
        ListImpl list;
/ A+ z6 r5 ]* B- c( J        char Id = 'a';  q/ H: _- }: }
9 T5 H7 ]1 r5 W5 B/ G
        ActionGroupDemo(Zone aZone) {- \* h+ x( M+ y; J  q% k
                super(aZone);
5 Z5 c, L, B) f/ P4 J& H                list = new ListImpl(aZone);
6 v' u, `9 @0 F5 M0 [) j                swarmSetp();3 I" |& \; e2 ]; q. e
                actionGroup = new ActionGroupImpl(aZone);
: q" L% K$ B( D" J# L# |                schedule = new ScheduleImpl(aZone);
5 P: P. r  _9 T: P                try {! [/ P% g% ?: Z% \+ g' z% Y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 e& s& z; T9 S: Q% f4 b3 p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" o3 @- J2 I8 O! I                        ! [, a5 b3 |! N) d3 o# k
                        actionGroup.createActionForEach$message(list, agentSel);
  K1 y# ^1 r) i( g3 v  `                        actionGroup.createActionTo$message(this, swarmSel);- v$ L$ ?6 d% `: x+ @$ W3 w
                        schedule.at$createAction(0, actionGroup);% i* D) W% Z+ S% O1 F: B& i
                        schedule.at$createAction(1, actionGroup);
/ `$ @; x& t9 X& ?7 O                        schedule.at$createAction(2, actionGroup);( @$ w& m) H0 j& N
/ A4 w; f% I- D; `
                } catch (Exception e) {
. Y/ m. u5 G" e' p                        e.printStackTrace(System.err);
  X2 z2 M- b5 Q! r4 U                        //System.out.println(e);, T! D- y8 ]& q7 Y1 _
                        System.exit(1);! i* E9 ?2 F6 T' z
                }
7 J; A( x$ h) S4 U, e5 \/ Z) y1 \% g/ r! `7 k

, h( f" f! |! @8 l4 u        }
5 w3 w, f8 M2 J- ]2 Q" Z/ d) x- u6 d5 |+ o" B% L: A* P
        private void swarmSetp() {
1 K# \# F6 x. F                list.addLast(new Agent(Id));6 B8 r& [' w7 V/ @2 ?) B
                Id++;, G' Y* ^+ m/ L: x5 W& ]: }3 T
        }! n% W3 w0 m9 R: }& p/ J6 b
  B7 J, B/ l( e- @+ Y: d* k' q
        public Activity activateIn(Swarm context) {4 U3 c4 [( l0 Y0 E) L" C+ j) H
                super.activateIn(context);% v9 M: t+ R- ?. f/ j2 L/ I
                schedule.activateIn(this);
5 U( w; R3 H* f; ^" h4 h, `                return getActivity();
" Z8 h6 E# h7 f( D  q) Z& p2 L        }
# W9 b. c% V) ^6 O( B, J* s
4 m0 ~8 q5 L. [! a        public static void main(String[] args) {0 T+ b" _( e. u8 z) s" }1 T- Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 y" q  V; D0 L; G  Q3 P- G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( {7 u" d% {5 C/ `* h4 w( v% h                swarms.buildObjects();% i3 r) m7 W6 K! @9 {. m, o* q4 {
                swarms.buildActions();$ w, e4 R1 m9 l' G# J$ \5 W
                swarms.activateIn(null).run();9 |$ @, O. M0 q" H1 C
        }
% k1 ~% b& R- H# ^$ w
) k% `4 T& J' D+ u7 G8 H}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 11:52 , Processed in 0.015574 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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