设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7455|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 P6 `, o+ ]2 I2 U5 G* G  a
, s! x; c3 r6 P! k8 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 c/ H9 y, \2 ]: i& Z: j0 B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# C; h: L8 ]% F) v* T8 S+ h: f  |
swarm.SignatureNotFoundException
4 Z& i/ h1 i; u! f; s$ ]; F+ ]8 @5 h8 o        at swarm.Selector.<init>(Selector.java:76)8 ~, b$ ?0 B/ V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% p5 _, g1 b/ B- |        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ h/ x5 }2 x* T
( R& Z/ f% n  N  t2 y  i1 ^
5 t" V3 c2 B0 E  A
import swarm.objectbase.SwarmImpl;9 q% O! L! j: u3 e
import swarm.objectbase.Swarm;
0 _9 H& ^  p* a* limport swarm.activity.ScheduleImpl;
% k1 l5 I0 s1 z) qimport swarm.activity.Activity;# l8 E2 f3 W( C4 S
import swarm.activity.ActionGroupImpl;
1 a3 u% i( x7 V7 u# cimport swarm.collections.ListImpl;0 F9 H/ X9 _+ N# F) l+ F& H
import swarm.defobj.Zone; # K( _  |& z$ ^* C* k& |
import swarm.Globals;
% z. r& Y, D& X6 d! ?1 S/ |3 ]4 bimport swarm.Selector;
3 D. \+ G" o  Z* G, oimport swarm.activity.ActionGroup;
8 p, t9 y" b3 U" B9 W+ }3 e3 Yclass Agent {
1 N! Y) k! }* ]- \/ E  ~, b        char id;; Y! p4 u) g+ X: @  j

6 d/ v( f: R: Z$ P, z5 h3 {        Agent(char id) {, @* c/ R" o3 ]' c
                this.id = id;
5 |( E# |3 R  M( X' _        }
/ N  j" {& ?5 G/ I5 J, S' [
. L/ n1 K# M9 O$ _2 v* o        public void agentStep() {
) E  \' B& X1 x                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 l' `' [0 j/ j7 T7 U( G        }
9 C# i! v  c# j7 u7 T# U/ a}
4 j3 x+ R0 p6 q9 f* G2 D$ a4 o) T0 C7 W+ c, a. T
public class ActionGroupDemo extends SwarmImpl {$ I( b1 |* Y1 ^% X9 ?8 b( M! J, B
        ScheduleImpl schedule;; c$ O$ ]* o+ N, V6 F$ p
        ActionGroupImpl actionGroup;7 g% ^  O7 L! \9 W2 a  T5 c
        ListImpl list;/ y  a; a* P! x+ V6 c
        char Id = 'a';$ N$ w6 M9 x$ r1 A

  [; ^  r5 M; j; c0 X# k! q        ActionGroupDemo(Zone aZone) {
) U' ~2 T! `$ ^( n3 W$ y, j                super(aZone);
8 l  M. u0 }5 M7 G                list = new ListImpl(aZone);
. r8 z7 B8 J" U- g! u9 d* e# w" H                swarmSetp();
* Y7 F. q/ s& N                actionGroup = new ActionGroupImpl(aZone);2 o( p- D5 N- M3 k
                schedule = new ScheduleImpl(aZone);, v& f; P1 o! y- _/ Y# y
                try {; u1 ^5 t) c! I2 P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 O9 W3 m8 i3 E" R+ F" m7 ^4 X                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 {! o8 M. L3 p, X/ R* K5 d" g                        & w' B9 T' e! f0 ~0 A' N0 Y8 W( i; e
                        actionGroup.createActionForEach$message(list, agentSel);/ Y' V& O3 `$ x& |2 S
                        actionGroup.createActionTo$message(this, swarmSel);
* }2 N0 P+ F( M8 K  i1 h$ C& Y; q                        schedule.at$createAction(0, actionGroup);5 y) t) g( s+ a5 V0 R+ l
                        schedule.at$createAction(1, actionGroup);4 S$ W; J6 L+ e2 ~4 W
                        schedule.at$createAction(2, actionGroup);
* C3 Z$ c" b6 v" m, _6 o& f
8 r- j% n1 n- w; M5 |                } catch (Exception e) {1 ~2 S, o) t! \( K7 V/ y
                        e.printStackTrace(System.err);
) o/ J8 {7 j2 @! d6 E                        //System.out.println(e);
' y- b$ a; k" q- h/ k                        System.exit(1);  g) i; U4 w5 n/ F" G
                }% W  b  V, _6 O1 n" W2 a

% b% o* U# B' S4 _$ b- ^$ k0 C: o- u
        }7 Z9 f4 }+ V4 h6 `) E5 R

$ _5 J' V, A! w  ^' h' d        private void swarmSetp() {5 p; J' j- {9 J4 K! d7 R
                list.addLast(new Agent(Id));+ K# }: @1 O2 L1 l5 Q8 p" \
                Id++;
6 v* ?' ?0 L, Z' u/ j2 e: ~# F' Y        }: j& L  k0 b  Z, S9 B4 J+ A
% Y# }2 m* }/ O
        public Activity activateIn(Swarm context) {
* j3 ^. s* s) c" A0 d" [                super.activateIn(context);
* c; z( r2 K* f8 o  I                schedule.activateIn(this);* s: {5 G; V8 b5 ]* c# h( Z2 Z
                return getActivity();- V5 y1 p' @' e" _  T6 s0 s6 P3 B
        }
5 x/ c- D9 x* r8 j
5 u2 i0 T2 U8 _8 i. ~        public static void main(String[] args) {
$ y5 Q7 H  G  ]+ S7 b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: u4 c7 {0 s4 d- d6 [9 B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- S, V! u  X+ W- O% F4 T                swarms.buildObjects();7 M- A& B3 t8 ]& J6 H  L* H1 K
                swarms.buildActions();
& X# R' L+ @7 F, m) g9 n                swarms.activateIn(null).run();' F! X; d- H* l
        }
. T- Y8 N# c  M: ~+ a0 e. H& n/ b0 [& b3 ^7 F
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 06:32 , Processed in 0.015040 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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