设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7838|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : Q) \" z! ?& |# G. t, n
( C9 Q- Y* K  Z( T' E4 f, l4 w+ J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 l7 H) @2 F0 O' q+ {: g7 n$ t& n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 r' I; k0 e3 r" A: I, X7 Aswarm.SignatureNotFoundException, k" c% b1 h6 M" q0 ^
        at swarm.Selector.<init>(Selector.java:76)
& o; x* v5 S; I) c6 K& I6 B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 F1 {+ B0 G% ^3 o, w0 K        at ActionGroupDemo.main(ActionGroupDemo.java:67)) \; O! U/ F+ Y8 g8 m

0 h( H8 [' e$ A; x5 O0 a: \+ B( S: w( c+ [! T" z( B
import swarm.objectbase.SwarmImpl;  a1 Z( @9 ?- B( b
import swarm.objectbase.Swarm;9 {% x- h, F3 D  Y( b9 y; ~5 ]
import swarm.activity.ScheduleImpl;
" y: P* m" _( T# |4 d3 s, d( C; |import swarm.activity.Activity;
( d: I* j  T2 B. J7 k0 Ximport swarm.activity.ActionGroupImpl;3 C' d+ m* G; B$ T) v
import swarm.collections.ListImpl;2 J2 W8 P2 J* O5 w$ @: T, L8 n4 }
import swarm.defobj.Zone; 2 z0 ~" L( |2 M7 H
import swarm.Globals;
/ Z/ U+ e: i  \2 \# Wimport swarm.Selector;
* T8 I4 U$ W' mimport swarm.activity.ActionGroup;
+ y  u8 |0 Z6 u% }! xclass Agent {* N* l9 y8 _/ V+ D: n5 z' a
        char id;
! e2 f/ J7 [: |, e. L! m- `9 B* G! U9 E7 g+ j0 e) ]4 g  b* g
        Agent(char id) {
" @0 l# S( v8 w0 c, X                this.id = id;
* Y6 |( f0 X% U4 Z5 v' C        }
" t, h+ m7 |; c6 C8 T, d. z' u- ^; ?5 W
        public void agentStep() {
& h8 c# j( h6 g# v. Q: S                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ u/ B6 |; i0 c% _        }
( W, T$ D7 f6 B" q. d# l  _}: ?! }2 r$ _3 s" y; Z- M2 C6 T4 i; S
/ n& O0 R$ ]- N/ D0 Z; H" S
public class ActionGroupDemo extends SwarmImpl {
+ \3 L; U8 F4 Y2 ^) U        ScheduleImpl schedule;
2 O; A! _4 |& d2 b        ActionGroupImpl actionGroup;2 m9 K: t( M+ v4 n
        ListImpl list;
8 s2 G1 m, B1 Y# D        char Id = 'a';* z4 |' y, {! f* r+ O3 r
0 d, j4 f/ q- l+ z0 C+ a$ u
        ActionGroupDemo(Zone aZone) {1 `& w1 c* ~& ?8 ]$ a( j
                super(aZone);4 V) l- o" G" D
                list = new ListImpl(aZone);
4 Z3 ?; A, P+ U9 s% k                swarmSetp();
/ c- Z/ z. w6 ~6 G: I6 h5 M                actionGroup = new ActionGroupImpl(aZone);! j% J. r; K1 N, ]& W& X
                schedule = new ScheduleImpl(aZone);$ i! A( y9 J* [' m  \7 A
                try {
2 g& o5 V/ _, Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- m' d: y; O5 ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 _; A3 j# W% N) H                        
4 a- K. k# Q. d7 V                        actionGroup.createActionForEach$message(list, agentSel);# i) |9 f$ U# a3 o
                        actionGroup.createActionTo$message(this, swarmSel);; x  W6 g2 a( F) N1 E
                        schedule.at$createAction(0, actionGroup);
1 {2 V! I( E; f$ h1 y- @                        schedule.at$createAction(1, actionGroup);+ {5 B3 A, _  ~; }* o& ~) f6 x
                        schedule.at$createAction(2, actionGroup);
2 _1 G2 J5 }9 Z' J7 l, ?
" y" d; s: t. F( @) v/ H                } catch (Exception e) {: s( J1 [& j1 g: r+ s0 a
                        e.printStackTrace(System.err);$ [: b+ x" e, j5 V7 ~' j" T9 R
                        //System.out.println(e);
0 n! g$ _/ I4 O1 g$ r- l% C                        System.exit(1);
# `/ ?. V) ^3 K( P9 `( t6 L0 L                }
2 M, z8 ]& c& V6 _3 I% G# b4 H" V# V# l. y6 l0 H8 f; ~# ?9 t

& J+ k& L8 v$ H" U# ]. E        }
" r* e1 u- y# I. Z3 o" ]
" {; P) N/ A( t; v& q( a# O. T        private void swarmSetp() {
  d4 P  A3 E$ k4 H) a  [                list.addLast(new Agent(Id));
% \! [0 S" g. V' v% e                Id++;
% x* U( _+ D7 f        }
1 S5 |0 {/ z8 d9 n6 c3 z4 x# \$ e. e# b+ ^0 k2 @% y0 p
        public Activity activateIn(Swarm context) {- k# n8 F! x3 x/ l/ h1 h2 ?$ ?, M
                super.activateIn(context);
: h) C' W0 K4 M) R; T# V0 b                schedule.activateIn(this);5 A1 c& L! I  r6 _0 Y* [
                return getActivity();5 a( @1 D9 }9 g7 e/ J. s
        }2 H$ D& D9 }0 o& p% R/ k. i
/ w4 L- K5 y4 F/ Q& o. L2 f
        public static void main(String[] args) {
/ {1 H8 D! O0 N  j  p/ S' C% C. i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 K) s$ o& G7 I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 U, \6 I5 a1 y1 X7 u" ~8 `( B                swarms.buildObjects();2 |) {( T3 e) L9 ?- H! V( ~
                swarms.buildActions();* o% O/ Q/ W5 g4 u# X2 z
                swarms.activateIn(null).run();
7 S9 f" |& ^& ^8 [# z        }/ k5 q, f1 G9 J6 y
' N4 U- y# a8 r+ [/ m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-16 20:42 , Processed in 0.013563 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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