设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13648|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 M7 {* q! R  s/ P. J; J3 o! m0 I# b, N" A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% F$ r! O- X1 H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 e, s0 ^: H; E" j% c
swarm.SignatureNotFoundException
, A3 R4 _% ?9 g0 f        at swarm.Selector.<init>(Selector.java:76)
* e' J% g" F' g% c8 p' x4 A        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ t4 l8 Z6 H, J4 R        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 J4 q' J  k" w( [

' J0 O. M$ W9 v" G) d9 O0 B: W. K  H6 p) f4 L% @
import swarm.objectbase.SwarmImpl;- C" c$ R' p) \# G, ?
import swarm.objectbase.Swarm;; Q8 l& P, S$ s( \
import swarm.activity.ScheduleImpl;6 t, L! Y$ @- Y* W" ]% J
import swarm.activity.Activity;8 L3 a. u, f1 H) T: t
import swarm.activity.ActionGroupImpl;
! s. _2 X6 ^, [import swarm.collections.ListImpl;
( v8 [+ p. L9 B' Iimport swarm.defobj.Zone; . p  E8 B$ ~" y, ^9 |" r' m% J2 X
import swarm.Globals;
- |' v1 i$ _: s- qimport swarm.Selector;
+ f, f8 K8 T" ximport swarm.activity.ActionGroup;
* s0 P9 K" e2 Pclass Agent {" _. G0 ~2 N; v
        char id;
. P$ {) @( [# I# C! s) u. {, F) A
        Agent(char id) {& n- z! ?4 X- m5 Z- {: I
                this.id = id;
$ C( A5 e% B, o6 O9 E, W7 h) e        }
2 C, w1 W7 B( N- w' u( N% Y7 j9 q
' ~, H+ e  Y% I9 z# U        public void agentStep() {
8 j2 d1 I) @: z: _. |4 A                System.out.println(id + ":" + Globals.env.getCurrentTime());
  E  M# u: Y& _" o3 C1 [        }  M8 o2 x# J/ p  v" c! I/ R3 N
}
4 Y9 \: w: ]! Y  j( g6 h  z. ]$ M1 w6 w" G9 M4 Y% g
public class ActionGroupDemo extends SwarmImpl {* W. @# |, q9 D2 f. p; K8 u
        ScheduleImpl schedule;  P0 |/ W) k" A; x5 U5 V6 k2 R8 h
        ActionGroupImpl actionGroup;6 A* g# @' p  \: m+ v, J5 X
        ListImpl list;5 W1 p1 O4 ]" k
        char Id = 'a';8 r* r2 u+ d! p! c2 R" Q. h

' ?$ W6 P- X1 h7 s! m2 ^! s5 Z  l        ActionGroupDemo(Zone aZone) {
/ b7 O3 g" F, X# I  X6 ^' w                super(aZone);
1 s( R9 _4 n" s                list = new ListImpl(aZone);9 w: D* V$ w  r7 e( k1 C! c4 z( H. Q
                swarmSetp();
- o4 ~3 m& t$ l+ {9 G3 F3 S                actionGroup = new ActionGroupImpl(aZone);
" P" H. T# a* E5 [+ H3 F% U; K+ j4 e                schedule = new ScheduleImpl(aZone);2 j; L; ?. u4 F4 L$ e
                try {
& A' w1 T4 M  Z6 x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 D) H& k! R+ W" ]/ P! ^: ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 M$ r' u/ l5 ?/ c                        
# e0 q3 X5 U$ R3 ]* P/ J8 K, P                        actionGroup.createActionForEach$message(list, agentSel);$ [* f( N9 ^! T$ v& U: q
                        actionGroup.createActionTo$message(this, swarmSel);; q0 z7 M2 L- f" {" H7 f6 u# g
                        schedule.at$createAction(0, actionGroup);8 s6 d; @& [8 I' w9 H
                        schedule.at$createAction(1, actionGroup);) P5 \: u* v( ]1 V
                        schedule.at$createAction(2, actionGroup);2 _4 n( v0 {. }; u1 ~

$ g% f2 g. I4 \5 j                } catch (Exception e) {
- ~& i7 j( N2 V( }' [  i' _0 z                        e.printStackTrace(System.err);
% N- y$ ]; V+ v: a& a* O/ _% P                        //System.out.println(e);
" K& R8 g% L# i' ]' e: Z/ y7 m3 v3 B5 z9 y                        System.exit(1);
9 Z  n  d* o9 ^8 P7 s% t                }
1 l* z: O1 w7 L4 t7 ]
, q/ {! \5 u$ r* o2 f5 S$ {
0 d, `0 Y% s( ^1 W9 g# P5 m* E        }! u. A1 t& P2 z; k  Z" W: ]

# }7 T, s) M* ]' k1 i" Y        private void swarmSetp() {2 @" J8 ]& x* m  F8 {0 A' ^0 E
                list.addLast(new Agent(Id));
. j7 b! _. x1 R/ [- k7 P0 G                Id++;
8 U9 T0 h  M9 H! m        }
- r  v9 F; m6 p) T. ?' |
( {. {5 E; Z: |        public Activity activateIn(Swarm context) {3 |4 ~3 T, U, V- y$ U  F6 H
                super.activateIn(context);4 g. n- x; O1 W/ s& i3 v" j# `
                schedule.activateIn(this);9 {9 U$ `" U# ^- X
                return getActivity();# v5 u( y% M' S) t
        }
* _" ]3 s" \( t. Y* s
) g/ }! p% A1 V        public static void main(String[] args) {& k. @* B. t" d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 y8 O; a2 P9 }0 z: o8 w( h+ `8 l& n& |' u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 p1 }9 A, Y, d+ z6 G
                swarms.buildObjects();
9 T8 T6 i  @- [6 H8 P3 Z" i                swarms.buildActions();& b2 [- b0 H8 ]0 y0 |  W! I# m- q
                swarms.activateIn(null).run();
  ]3 m: T& Z% W9 o& O9 g, n        }
4 P6 v+ k1 t- s: P" C6 }: J* H' ]$ g
& p! U6 }+ L! S& `, ~8 ~+ E}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 13:23 , Processed in 0.016871 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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