设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10202|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 {/ F& |! E' r! B+ U/ c
) N- ]# {+ y( @/ n- z2 |- V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ C5 S: q# |- k" {, U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 s$ d6 E. [) Z0 H. f5 G7 |swarm.SignatureNotFoundException
# P4 J! l+ q" R/ m/ X        at swarm.Selector.<init>(Selector.java:76)
; `7 T8 p4 E1 s/ h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, H3 K+ k% S( y9 d$ x4 i7 A- s. P        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. i5 Y0 P; R; A% l6 f" \+ g1 G7 }8 o5 t- J7 q; ^2 ^3 X

! V. t2 b1 z+ m5 Simport swarm.objectbase.SwarmImpl;, Y3 Q) b% g# i2 @& r6 U
import swarm.objectbase.Swarm;0 ^! h, ^9 B% X! o, }# c
import swarm.activity.ScheduleImpl;9 ?# Z! G+ s+ U: J; [
import swarm.activity.Activity;7 v3 Z# a8 G! s+ v6 v7 `
import swarm.activity.ActionGroupImpl;. Q7 V: ?" O1 X; f8 J
import swarm.collections.ListImpl;% p7 t& m7 m7 ^  o
import swarm.defobj.Zone; " F4 P/ L) J' x4 L9 L2 `+ y( H
import swarm.Globals;+ _5 K' o3 {0 C6 _2 K
import swarm.Selector;3 a$ f  d$ e9 [3 r5 `
import swarm.activity.ActionGroup; * w2 K( B8 C3 ~0 x+ d2 q* c
class Agent {
  d; Y% I9 m! a        char id;
( m" @2 e# B% ^  p  ?+ D9 e; G# ~
        Agent(char id) {
& f. s5 ]5 `0 f# ~3 Y6 P3 m                this.id = id;; X& W2 {4 n7 t/ u) g7 R
        }: T0 M8 {/ T" N) r  Q- z

9 E" _! z2 Y$ p& i& m6 N        public void agentStep() {( s3 l- n$ i) e+ S3 J$ p; Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ |8 ^( I& y) n        }* g. J9 D" K# U5 ~+ C' C
}
3 ^5 Z  w" e( K  p  y
, l4 C3 t! `; }3 o* l- b$ M7 `/ apublic class ActionGroupDemo extends SwarmImpl {; k5 @/ @& b* z
        ScheduleImpl schedule;
! w! Q7 D, e0 h9 l# \        ActionGroupImpl actionGroup;
) J# A6 ~+ @2 j6 ?6 ^$ Q. j        ListImpl list;
5 q  q, U5 _5 X: y        char Id = 'a';9 d3 |, U/ _$ ^- l* r2 K
. G% r- c& a4 k" s2 a9 `. s2 Q( o
        ActionGroupDemo(Zone aZone) {
( z  \2 w+ i2 o$ g) l' R                super(aZone);# Q2 K' J9 g$ _) b6 }
                list = new ListImpl(aZone);6 [8 W/ O0 }0 U, v" a
                swarmSetp();
% l( v/ T- k$ q  i. \- t                actionGroup = new ActionGroupImpl(aZone);! G/ P* @6 U, k% A4 e; X
                schedule = new ScheduleImpl(aZone);
- H+ k# e" o! U+ q                try {
5 h, s1 h  @9 ?; g1 i% p                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 ?: A' g3 @2 ~* D" H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ G- M1 F3 J" C$ _4 ~
                        + o7 m3 N& P" i* n  Z) }! {7 @1 r
                        actionGroup.createActionForEach$message(list, agentSel);) g; X* v$ K2 x9 v% p/ c
                        actionGroup.createActionTo$message(this, swarmSel);
7 O  ?# G: w; a$ j' @2 h2 g                        schedule.at$createAction(0, actionGroup);
4 z: r3 a  e; {                        schedule.at$createAction(1, actionGroup);% m' b' w* U" W# |: @
                        schedule.at$createAction(2, actionGroup);- W9 |! e5 c  I5 _2 I& E8 @$ W: p

3 M! V2 O2 l3 Y4 J- h  M1 }2 Q                } catch (Exception e) {5 X7 K2 V& v% [+ x$ ~3 h( P
                        e.printStackTrace(System.err);8 j* q& P8 N; N2 g5 W
                        //System.out.println(e);
5 k  ]+ Z/ E% _& {; ]                        System.exit(1);/ }' F# R0 h$ b7 g* o) l; T
                }
: a) R* p. t) w/ [, I
$ a0 D4 v# z9 `* S. j: l- L/ h% n7 F% W$ L
        }: _& B" s# x' l2 f. f1 S6 Z. q( N

* g/ M! s9 v$ f& f        private void swarmSetp() {  c$ h' W+ t6 ]/ o& Y
                list.addLast(new Agent(Id));
! y( g. j! Y, P6 I                Id++;+ Y+ R8 K+ {2 B7 N- k) R/ ?/ a3 e; d
        }3 J8 D8 X) J* P  E

; _+ c" Y- t9 J' M        public Activity activateIn(Swarm context) {5 j! Q+ _& `: P4 m
                super.activateIn(context);
9 f4 y1 g, T3 W# y4 P                schedule.activateIn(this);
) T3 j( P2 }0 I% s. q" ?                return getActivity();
0 I/ W8 u* d9 H* [3 E; z  s        }. g4 p* Z" Q% X, _- D3 v

+ `$ U+ L6 @. z. p7 w        public static void main(String[] args) {
4 a# y7 G2 q+ K7 R" {                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. |$ a) D# m8 t- y! o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ X' o4 Y1 h' N! R
                swarms.buildObjects();" {+ e7 G: G5 a2 |+ r( O/ ]
                swarms.buildActions();5 H3 {. n9 G4 Y) r( s
                swarms.activateIn(null).run();) S6 ?8 [. ~+ F% ~* c5 z
        }
" N2 [( V; `  O" |4 n5 q3 k0 \# c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-7 04:43 , Processed in 0.015016 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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