设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9039|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' E( x' K9 M9 y9 Z, N0 m9 N) d% w3 x
: U  w) O! l0 }! j+ E, P! L本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 c6 J& W) g* Q2 r. A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 k' x7 y4 u9 j3 ]swarm.SignatureNotFoundException: x* j) V# a! s+ m* j* ^3 }
        at swarm.Selector.<init>(Selector.java:76)& X, B. M! a8 \# v2 }: M5 V2 {: B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). ^) z) r: u; _. h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 s" n7 H) a, e- T& d+ U
) T' I% w1 x; o$ c; J# [
' J6 A8 W8 s$ t! ^& T
import swarm.objectbase.SwarmImpl;5 E, m  |1 o+ I+ n# L
import swarm.objectbase.Swarm;# Q- X+ w! C7 @% H
import swarm.activity.ScheduleImpl;+ T$ M7 g) q' E& M+ `+ I
import swarm.activity.Activity;/ `1 z! s! K. Z! r) {6 J2 X. ]
import swarm.activity.ActionGroupImpl;% i( B2 b2 h0 a: ?5 q
import swarm.collections.ListImpl;- D) |0 S+ g1 J" B! M
import swarm.defobj.Zone; : H! @4 m! ]% V) u
import swarm.Globals;& h# x  e! m; Y/ {9 E, D
import swarm.Selector;3 \3 l8 l) |, Y% Q6 I
import swarm.activity.ActionGroup; # x+ S  t( U4 p- h8 R5 [5 h
class Agent {$ ?" f% Z, N; l4 V% f
        char id;
0 t' z0 e6 u% h3 g7 T3 Q8 a5 }$ c8 }& [7 t4 ?
        Agent(char id) {# B, d3 A0 F8 W- @9 H7 T
                this.id = id;2 s2 \$ C" y' w
        }
5 }2 l' s) u" D: n) c0 n) N0 W% f- L8 o1 o  q! Q2 m+ t) H! O& p* `
        public void agentStep() {% `! K! g# N$ N
                System.out.println(id + ":" + Globals.env.getCurrentTime());- j9 l8 a. J6 c/ Z. a  b
        }5 w0 G9 H, q! ?  Q1 U# C
}; v* V' ^1 m* A# I
& ~- _/ \5 R* I3 F1 C3 X
public class ActionGroupDemo extends SwarmImpl {
% M, c2 N' ^5 O! Z1 [, m9 r# n        ScheduleImpl schedule;
# z5 Q7 t9 v& h3 G6 Z        ActionGroupImpl actionGroup;( I$ O6 g! _/ S! Y$ \, y) E7 c. r
        ListImpl list;0 }% W9 v8 o$ U, }7 b0 Q* [. ~
        char Id = 'a';
% E$ H* i( V; e: v
6 g3 }0 L' T# ?7 {# i+ t        ActionGroupDemo(Zone aZone) {
/ f) k9 |& e  P' t                super(aZone);! F* v. c* {& l5 {
                list = new ListImpl(aZone);
, t3 h+ [5 @8 m/ p0 G' n: y# }                swarmSetp();
. t- u+ ~2 L! p3 F$ n) t+ k                actionGroup = new ActionGroupImpl(aZone);
$ q9 S% r, ?7 R0 z. T4 ]                schedule = new ScheduleImpl(aZone);
# C1 C( u5 ^7 n" ]  W                try {) q; r" j# a" B. e8 I/ |* ?
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 G& `6 T$ n- l/ y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ Z0 C6 [/ {* h; V# w4 V9 Y. Q4 `# l
                        
  R; I" R9 G: V4 x; z  m                        actionGroup.createActionForEach$message(list, agentSel);" d9 k: O0 ?% _) o
                        actionGroup.createActionTo$message(this, swarmSel);2 y. ?) v/ e$ g* E! r
                        schedule.at$createAction(0, actionGroup);
  {0 u5 E+ {* N" C. Y                        schedule.at$createAction(1, actionGroup);0 F7 ?$ T) c* B! r
                        schedule.at$createAction(2, actionGroup);7 k+ {; @! g, z* n% r

, X) w8 o9 q; z1 L. Z                } catch (Exception e) {6 j) W0 W% {' h7 B9 y  t. ^
                        e.printStackTrace(System.err);
: ~3 V' h2 g+ `- s4 ]                        //System.out.println(e);- _: P2 P* d8 E; z4 f: j% [
                        System.exit(1);+ N1 b0 Q+ P7 ^3 U9 s: L! V7 {
                }
3 c9 k  U" L0 y8 {+ D+ u; O' R1 s; g" S4 d" l, I: e4 T4 D0 G2 D5 w
" L0 Q5 M  o: \$ }! M
        }
% t. q% n6 q/ ]" j) o* x: o0 R- F
' Z" }+ B: P" N1 p8 E, G7 P3 N8 o        private void swarmSetp() {  k. p" u) i. \" {; v; U# @
                list.addLast(new Agent(Id));, H: ~: ?& t" Q" o/ d3 l( C1 ^
                Id++;5 N. R& \) J8 v; ~1 j/ u
        }
8 ?& t# ~% M! W+ t0 X' ]: L/ C$ R' S' r, v
        public Activity activateIn(Swarm context) {9 i/ S6 O  c9 `9 a, _
                super.activateIn(context);) m) s% w2 w, g* g  N9 i" }5 |
                schedule.activateIn(this);
- ~* g* t( o+ W8 u# e! I                return getActivity();
7 B2 n5 N! f/ S        }
& ?$ L! ^* {( H, ^) G4 u6 B6 o8 F
        public static void main(String[] args) {$ g" @* i' L  @' I/ ^. h- f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ g+ f' ^) z9 r  u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' J' @& M7 l) A8 y6 N) |  m                swarms.buildObjects();
* x  a  Q2 }, J! ]                swarms.buildActions();
7 Q, h7 g, c+ t8 _" f9 n                swarms.activateIn(null).run();
! u' s' H9 ]# _0 y5 V7 u        }- s" E% i2 v2 S
% Y; Y: P& u* R5 ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 19:32 , Processed in 0.015442 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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