设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10650|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 q$ h2 m' D5 l( d
; x" u0 o5 Z' y6 N0 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* p) x' y2 H8 c$ u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. h) @1 _/ g5 H" I! Q
swarm.SignatureNotFoundException
2 I4 e( Z% b3 |4 O% O        at swarm.Selector.<init>(Selector.java:76)3 v% C; X. o1 g/ ~7 ~7 a& g
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: t9 n. u6 M0 u. @9 ^  |' m7 S        at ActionGroupDemo.main(ActionGroupDemo.java:67)- w% N# P' R/ S1 x
: q  w% f1 M, g8 p

# x3 w- @! t3 I3 X% d" t9 t; Mimport swarm.objectbase.SwarmImpl;! S; s- h+ p' d3 A8 g  b
import swarm.objectbase.Swarm;, D  v1 s3 m0 X" K
import swarm.activity.ScheduleImpl;
# s% f# T% P2 L9 B$ N8 z+ ?import swarm.activity.Activity;
( |6 v4 v9 C% o! pimport swarm.activity.ActionGroupImpl;! W7 E. {0 ^/ L7 O
import swarm.collections.ListImpl;
2 j1 R3 J4 i, ]% Himport swarm.defobj.Zone; " m" w/ ~. K7 B
import swarm.Globals;9 ]" j# v- w  o
import swarm.Selector;' g. @8 j' R2 t5 C- G: E
import swarm.activity.ActionGroup;
# D( C) x- K7 S! \0 Pclass Agent {
+ f3 M3 a! f- l        char id;
4 y8 g* q/ w* I$ O; A3 J! Z: ^( V" y9 Y
        Agent(char id) {! J* h" h$ e$ N
                this.id = id;- R" W1 k. Q# T/ [9 K0 i
        }
8 N  B0 J, l/ L5 W* P- c0 X
2 A0 R9 e) t" O        public void agentStep() {% C7 z; a  V) f2 d
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, J8 s- f. L( p$ O6 h5 v: {  t        }
- _6 I( r5 ?5 k' B}
0 v6 o/ x7 \2 A0 a6 b8 |% d! E% O+ n: j, N
public class ActionGroupDemo extends SwarmImpl {. |" A( C  j- `9 s' Q; c3 W
        ScheduleImpl schedule;2 F9 L! B. y6 l2 f8 T
        ActionGroupImpl actionGroup;( l& Z% [  T" r+ ?4 x
        ListImpl list;- s$ D8 X5 M7 j$ `* g0 L, R* W, _
        char Id = 'a';& }. h7 ^4 Y1 b' B' Y! M; j& R& Q

5 ^% ?! V$ o5 ~1 a0 G6 `        ActionGroupDemo(Zone aZone) {
3 d4 _5 M, M; d1 q& @/ P                super(aZone);; D: {3 ]- Q4 ]  w: ^8 o) ?1 [" D
                list = new ListImpl(aZone);! d" E3 K/ R. y, [" [- K% m6 X
                swarmSetp();$ t; l; Q7 I6 k& U0 }2 f3 |; v
                actionGroup = new ActionGroupImpl(aZone);
5 f* f. m( V+ V# B; i  L) g                schedule = new ScheduleImpl(aZone);
, z7 [( X* I+ w$ _                try {4 V4 v* H3 _& t$ g5 u/ R) \! c
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- t4 |  d, J* ~( \" n7 O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' |/ e$ K$ Y( h) k( e                        5 J0 N; y2 B6 {. o+ J( ?, B- N) o5 \
                        actionGroup.createActionForEach$message(list, agentSel);
6 G1 d8 I8 M" Z, R6 k                        actionGroup.createActionTo$message(this, swarmSel);
3 e% a) R4 ]7 E. u1 }" ~" X& M  P& A4 }                        schedule.at$createAction(0, actionGroup);! r0 c7 X% r+ S; m
                        schedule.at$createAction(1, actionGroup);5 m& X7 i( f% F. r
                        schedule.at$createAction(2, actionGroup);0 r& j* C# C5 V! B/ \) I

& ?: U, C# c$ ?                } catch (Exception e) {
- d( ~$ U, y- e4 B: W; x4 [                        e.printStackTrace(System.err);2 O+ f5 P- b6 s7 o/ G1 H
                        //System.out.println(e);
$ O. u- P6 n, x7 x                        System.exit(1);
. m$ E" k0 C  j2 [                }
/ W* m4 G7 w6 d( W5 [3 l; W" i+ ]4 I& E# a+ ]

# R- d$ C. z, v! Y# ]) s        }
. m% i0 ?- ^; O8 e7 g  n
2 G8 Y5 o& X, o# `: \  |        private void swarmSetp() {
* p( \4 I2 [- p/ ~                list.addLast(new Agent(Id));
+ ?5 F  S8 K% n& g                Id++;6 K3 g  T; a. ^6 i: e
        }
( G0 U% m. l- w' J
9 `* X6 }% p" @0 C" R- ^        public Activity activateIn(Swarm context) {
% ?' i% [) D6 P0 s5 ]. [; c0 i5 d2 @                super.activateIn(context);
7 D3 K0 H0 P% g( Z                schedule.activateIn(this);$ z9 ^% v2 e: f
                return getActivity();
+ g' {6 [& _8 @9 D4 k( X) w        }6 O. V6 h9 }  [
2 M; W3 w3 Q/ h
        public static void main(String[] args) {
. ]2 Y: R& ?/ X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! q4 Z+ g0 \7 l; A& h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; P, C7 n; Z5 ^% B9 W# M
                swarms.buildObjects();
1 D; }+ X0 T& V9 q                swarms.buildActions();
) D: |+ I1 v0 A- c- T: A: |                swarms.activateIn(null).run();
; J4 H8 `' G' r* s5 k& h0 `        }9 K& X: m/ S- m& |* ^! z
5 P3 ^! c5 P- g. S( o, B
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-19 16:17 , Processed in 8.011635 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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