设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12737|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Q) @  C, T% ?" g
9 z# ?4 O& P  C. D- O- u. R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" g; x+ Z. ]+ H6 u9 K$ }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ ^6 L9 u2 q% j; O- |swarm.SignatureNotFoundException
$ E( r( d" {( F9 J* @) _. [        at swarm.Selector.<init>(Selector.java:76)" E9 b+ Z) a/ v8 B! y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( ]. }0 K; [7 _4 Y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- J; {9 y4 J% k) H4 F& `0 k' ]1 z& ~! |: R0 Z  ]% i0 y3 O
3 l! Z  I& q( G; S/ ^( L5 P
import swarm.objectbase.SwarmImpl;
' C6 c  D" w7 R# R# Y% v' G8 Aimport swarm.objectbase.Swarm;# M' j% D1 F( f3 p  Q5 d
import swarm.activity.ScheduleImpl;" O5 y7 _- Z) J- V& y
import swarm.activity.Activity;
1 e) s# r, m2 Pimport swarm.activity.ActionGroupImpl;2 {6 _5 ?) t3 Y7 B6 C! ^/ q
import swarm.collections.ListImpl;/ q3 [5 @1 ^5 [; h1 {
import swarm.defobj.Zone;
  U7 p6 b' W, _( q, J1 ~8 Y- y3 I7 zimport swarm.Globals;# l" Y" L/ u* J. D+ i3 P/ M
import swarm.Selector;# f  \/ c, `3 ^! k, C. Y( _7 M' g
import swarm.activity.ActionGroup; " k8 E* ]' G, {7 \5 Y  c
class Agent {' @& F! s  ~2 j. |2 d
        char id;
+ g+ M9 Y, L; i7 Y
9 A: f8 ]; I) O! o6 H4 }        Agent(char id) {
, Z* U- x: {2 E# ~$ B                this.id = id;
0 w7 B+ ]- C6 n# Z: l        }
; ]! n5 ]% [# p1 M/ P4 k7 O! k6 F
3 v7 x. c/ j" @- k        public void agentStep() {
9 E8 @! {1 R' {% J& h                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ b9 X* b- ^& F2 |' u% M2 T        }. M; m) ?: }& l5 y, E
}0 B: l) f/ X$ L: q% @( B5 D
% U8 \! p% J% B# t  j( k4 s/ U
public class ActionGroupDemo extends SwarmImpl {7 Q0 c$ y3 T$ L1 [
        ScheduleImpl schedule;
8 p# Q" W+ U* a' R0 D        ActionGroupImpl actionGroup;
4 K) f% Q  N  C, d, u$ `9 G        ListImpl list;
# X6 O$ p/ R! b( N        char Id = 'a';6 e6 j" b* ?* ]9 y5 }8 Z& `
# N* |' o3 n1 D" _  m
        ActionGroupDemo(Zone aZone) {
% `8 [2 N6 M' n4 D# c4 ~" e                super(aZone);
5 ^& @* E# t& m                list = new ListImpl(aZone);
; g9 t0 K) O+ A! i) e0 ]0 ^: b                swarmSetp();8 h- `; T: J6 G' _8 A
                actionGroup = new ActionGroupImpl(aZone);4 w. X. }  \; B  c
                schedule = new ScheduleImpl(aZone);
& U8 l: L+ k1 R" `9 q                try {+ Q2 E/ q# d' N& M* P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) L) C) S3 o! e: R  w; s  }& \8 d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 }) M' k0 S6 C" ?: [) I                        ! j7 }! ]% d, B$ \& {" G# A
                        actionGroup.createActionForEach$message(list, agentSel);+ U( a& ]& u- o" Q
                        actionGroup.createActionTo$message(this, swarmSel);/ ?. q) ~, B1 u& @( v+ i
                        schedule.at$createAction(0, actionGroup);/ n& i0 W2 S2 b1 q: S/ e0 H
                        schedule.at$createAction(1, actionGroup);3 b7 L( [4 w) ~% p& w: |
                        schedule.at$createAction(2, actionGroup);
9 y# j9 k+ f$ N" t* B
) a; s. o$ q/ J7 v                } catch (Exception e) {9 L9 S" o" Y3 E) ?
                        e.printStackTrace(System.err);! |, m: E8 e9 s, b- }0 U6 x2 J
                        //System.out.println(e);, ?$ c; c+ B7 [7 R8 I: c
                        System.exit(1);' o# }7 f5 ]. Q% z, M% h3 O
                }
3 q7 ]& o& m' A: X5 m" u3 z% T3 [6 y3 W/ L% B0 i

/ A. ?2 ]% b& j3 Q9 m        }
1 `; Y$ ?# `1 k' m; [9 L! d0 ?' [3 L5 K0 }4 ~# v: G+ a
        private void swarmSetp() {
' z) c* e1 S$ }. H  e& g, J( Z9 p2 b                list.addLast(new Agent(Id));, ]+ M. m+ c) ^+ K( a
                Id++;
! ^# |) w# ^8 w( C        }
4 t  P3 D& z: ~8 E8 {$ g$ X2 w0 `" p& V& S9 m! X
        public Activity activateIn(Swarm context) {
+ p& n( R. K2 v0 J: |( S  Z                super.activateIn(context);
# R9 N' W" _: O9 X, q5 x+ a; p                schedule.activateIn(this);
1 E" `4 A2 j1 o/ ^& E" Q6 ^                return getActivity();8 I* I& H4 ^+ N
        }
  J1 K" X8 u: T* e/ t* c& F+ Y: m5 A4 {
        public static void main(String[] args) {
. p; j6 i$ l7 N& S# }% h  ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 q! X3 h& H2 I4 O9 t' Q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# ~$ `! |, [  I! s; W                swarms.buildObjects();
2 x( i' A; y1 a- \( I                swarms.buildActions();
$ v" ]: S: W+ p/ v- r2 T0 Q                swarms.activateIn(null).run();
6 f9 ~  U4 Q$ F        }
  R5 h! P( F7 ^" `2 V
# S  H% {( e4 q9 B( ^# x1 f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-17 16:13 , Processed in 0.018591 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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