设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8255|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 Z  C8 t. ?% R, [) r* z6 {7 A
0 Q% R% V- P. k+ K5 u4 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 {6 x1 e* q* ~) P( ~6 U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 B/ F! n* O, v, ~2 ~
swarm.SignatureNotFoundException* F& _5 g. ?% E
        at swarm.Selector.<init>(Selector.java:76)
: J  B5 S2 [) o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 `5 s2 [0 h8 K8 |  w        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) N0 T( d0 T% Y5 k! {$ y8 H( ^# a0 u1 B* z. z* z
" j0 l' T0 Y% s' L0 P
import swarm.objectbase.SwarmImpl;
0 }7 Z9 R1 E" O9 ]4 Rimport swarm.objectbase.Swarm;* X. ~( U0 ?  a
import swarm.activity.ScheduleImpl;! o- P, ]2 d# {, [5 I$ T
import swarm.activity.Activity;, _0 n- Q/ B) V  ]1 c2 ^' E
import swarm.activity.ActionGroupImpl;$ V6 x- ~* f7 E' B2 n
import swarm.collections.ListImpl;
: i( o- R; U/ @6 Rimport swarm.defobj.Zone; 4 X" i* w: ]2 ^5 N" j
import swarm.Globals;
7 |4 D1 V) O) aimport swarm.Selector;
) j; T& P3 U# }5 d9 H; x3 kimport swarm.activity.ActionGroup;
# u# n" B! r: A4 `class Agent {* f/ W# [3 T" |$ ^
        char id;, L+ w- W; U( X9 l* i3 @

4 c2 C  ?9 h( G. j. u5 J        Agent(char id) {6 f+ d. M0 ?4 {- A
                this.id = id;5 M9 Q- T/ T. p- B
        }
: a' r4 |' y- v( q2 O4 }
. Q( d  U0 V2 V2 S9 ^/ g        public void agentStep() {0 a% m7 S9 j$ ~, ^. N
                System.out.println(id + ":" + Globals.env.getCurrentTime());' Q& F: ~( A" v! ?
        }# @0 v/ ]; v9 _4 y' Y
}
# p/ s5 E, q* |6 E5 m2 ?
4 b* Z7 y, C5 o; [public class ActionGroupDemo extends SwarmImpl {
4 ]- S- p1 S( g        ScheduleImpl schedule;  ]) g7 E' e8 [6 K) l& t5 y4 T
        ActionGroupImpl actionGroup;6 G* k7 I0 M; v/ L4 g
        ListImpl list;# `- [/ y5 y' f; r# S
        char Id = 'a';( D  E' D+ t' X$ D) h' u

& {( C2 X2 ^3 y" |# P        ActionGroupDemo(Zone aZone) {5 O  d$ A4 e* L2 c: j' g1 Z3 {
                super(aZone);) q0 @5 ~1 [- ]1 ^8 C
                list = new ListImpl(aZone);
# Y) Z. H; E8 [  v. o                swarmSetp();& X$ s) V4 P2 z& C( `" N& ~7 p
                actionGroup = new ActionGroupImpl(aZone);
; b& v: d; P& V/ K$ y3 C. v8 k                schedule = new ScheduleImpl(aZone);8 n) F3 Y' M2 r+ t
                try {
1 P. S' T& [1 u- [9 u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# Z: w" u1 r2 z4 J2 [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! r( R; x! d1 M' N/ I                        
8 L6 J6 k" r0 @                        actionGroup.createActionForEach$message(list, agentSel);  f& L( P/ v$ I; M
                        actionGroup.createActionTo$message(this, swarmSel);/ Z9 P0 i8 N$ o  @5 f
                        schedule.at$createAction(0, actionGroup);% E/ P6 \3 H- F8 S1 t
                        schedule.at$createAction(1, actionGroup);
& X1 }1 d, x, e. y% n& ^! r( Z7 u                        schedule.at$createAction(2, actionGroup);0 r  f# y3 n+ U& q1 |! ?

/ ~9 g" {1 \' o" ?; ]8 Q8 A, q                } catch (Exception e) {
0 o! F# B) H% L, |9 A3 |& `& \                        e.printStackTrace(System.err);: v% _) a4 s% J- v
                        //System.out.println(e);( V: }; Y; C; T3 Z
                        System.exit(1);4 J- l7 I0 @. a" O
                }  i' S4 ^3 b# x/ c/ \& r) k
# R; W( a( r! y7 b4 |: V1 r

% O/ \9 ~8 W$ [9 V$ d& B        }9 l0 g6 f& i0 V3 |6 r

5 I* }$ i! y) r3 y& E        private void swarmSetp() {# S  q4 F8 h$ U
                list.addLast(new Agent(Id));
0 y1 c. X# y  y% [( [' [) ^                Id++;
/ h; X* l  ^# N; F$ T        }
9 W/ ?5 j4 x$ W
2 h% ?! z% n! x9 [, b        public Activity activateIn(Swarm context) {6 R& b  U8 L) U( U" [2 i: e9 `
                super.activateIn(context);
2 T4 q* w5 v6 Q! a1 f7 L                schedule.activateIn(this);
% i3 ~9 W/ @  h3 J- ^" c                return getActivity();) u; H' i3 Q$ c, z: |
        }
% m$ h; b! {9 v
0 \. u* g& B. ?4 F        public static void main(String[] args) {# j9 ^5 ?6 D0 \' x
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 b+ Z& M  L5 x2 l# d: n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# f% d! a+ |: S* K# T                swarms.buildObjects();
8 R" r5 ^1 d7 X' `                swarms.buildActions();* t2 F! C5 n# D& x2 P
                swarms.activateIn(null).run();) w( W. r- i5 T
        }
  t& B) r: C; X4 A  H. T0 |  n8 D* w( ]
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-5 01:18 , Processed in 0.017085 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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